{ "apiName": "xyzbc-trt-estop-power-home-run-pause-50ms-verification", "status": "passed", "capturedAt": "2026-07-09T17:33:00.263Z", "projectRoot": "/home/mes123456/cnc_wams/web-rtcp-5axis-xyzbc-trt-sim-plan", "linuxCncSourceRoot": "/home/mes123456/cnc_wams/linuxcnc", "appUrl": "http://127.0.0.1:39601/web-rtcp-5axis-xyzbc-trt-sim-plan/app/index.html", "linuxCncSourceReferences": [ "/home/mes123456/cnc_wams/linuxcnc/configs/sim/axis/vismach/5axis/table-rotary-tilting/xyzbc-trt.ini", "/home/mes123456/cnc_wams/linuxcnc/configs/sim/axis/vismach/5axis/table-rotary-tilting/xyzbc-trt.xml", "/home/mes123456/cnc_wams/linuxcnc/configs/sim/axis/vismach/5axis/table-rotary-tilting/demos/xyzbc_switchkins.ngc", "/home/mes123456/cnc_wams/linuxcnc/src/emc/task/emctaskmain.cc", "/home/mes123456/cnc_wams/linuxcnc/src/emc/nml_intf/emc.hh" ], "sourceRel": "configs/sim/axis/vismach/5axis/table-rotary-tilting/demos/xyzbc_switchkins.ngc", "outputDir": "/home/mes123456/cnc_wams/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260709T173206Z", "captureMethod": "Playwright clicked AXIS DOM controls for ESTOP reset, power, Home All, Run, pause/resume, while a 50ms interval full-page screenshot loop recorded the visible web simulator.", "samplePeriodMs": 50, "runSegmentMs": 5000, "pauseSegmentMs": 5000, "expectedSequence": [ "解除 ESTOP", "上电", "Home All", "自动模式", "Run", "Run 后执行 5 秒", "第一次暂停并保持 5 秒", "第一次继续执行 5 秒", "第二次暂停并保持 5 秒", "第二次继续执行 5 秒" ], "gcodeDataChecks": { "apiName": "xyzbc-trt-gcode-execution-data-checks", "runningFrameCount": 6, "pausedFrameCount": 5, "framesWithSourceCount": 6, "firstRunningFrame": { "elapsedMs": 6320, "runState": "running", "activeLine": 16, "sampleIndex": 48, "line": 16, "statement": "g0b#c#", "currentVelocity": 203.7696, "sourceFile": "helix_bc.ngc" }, "lastRunningFrame": { "elapsedMs": 48427, "runState": "running", "activeLine": 17, "sampleIndex": 479, "line": 17, "statement": "f# g2i#z# p#", "currentVelocity": 996.516, "sourceFile": "helix_bc.ngc" }, "minSampleIndex": 48, "maxSampleIndex": 479, "minActiveLine": 16, "maxActiveLine": 20, "maxRunningVelocity": 1999.998, "sourceRel": "configs/sim/axis/vismach/5axis/table-rotary-tilting/demos/xyzbc_switchkins.ngc", "passed": true }, "events": [ { "label": "setup-estop-active", "at": "2026-07-09T17:32:11.453Z", "snapshot": "snapshot-setup-estop-active.png", "state": { "machineProfile": "xyzbc-trt", "selectedGcodeSourceRel": "configs/sim/axis/vismach/5axis/table-rotary-tilting/demos/xyzbc_switchkins.ngc", "taskHalLoaded": true, "taskHalRuntimeReadiness": { "apiName": "web-rtcp-5axis-linuxcnc-task-hal-runtime-readiness", "loaded": true, "semanticBoundary": "linuxcnc_task_motion_hal_wasm_simulation_runtime", "sdkSemanticBoundary": "linuxcnc_task_motion_hal_wasm_phase4_minimal", "executionContext": "direct", "workerUrl": null, "taskRuntimeReady": true, "motionRuntimeReady": true, "halRuntimeReady": true, "halSyncReady": true, "nativeTaskReady": true, "nativeHalSyncReady": true, "hardwareDrive": false, "hostRealtimeKernel": false, "externalUserMProcessReady": false }, "runState": "stopped", "taskState": "estop", "powerOn": false, "estopActive": true, "allHomed": false, "mode": "manual", "interpState": "idle", "interpResumeState": "idle", "taskPaused": false, "motionPaused": false, "rtcpState": "off", "kinsType": "identity", "activeLine": 16, "programExecutionSourceMode": "linuxcnc-task-motion-hal-wasm", "programExecutionSampleIndex": 0, "programRuntimeFeedback": { "apiName": "web-rtcp-5axis-program-runtime-feedback", "sourceMode": "linuxcnc-task-motion-hal-wasm", "semanticBoundary": "linuxcnc_task_motion_hal_wasm_simulation_runtime", "sampleIndex": 0, "motionIndex": 0, "line": 1, "motionProgramLine": 0, "halProgramLine": 0, "activeLineSource": "fallback", "activeLineHalSynced": false, "type": "TASK_MOTION", "paused": false, "timeSeconds": 0.02, "axisPose": { "x": 0, "y": 0, "z": 0, "a": 0, "b": 0, "c": 0 }, "currentVelocityMmPerMin": 0, "requestedVelocityMmPerMin": 0, "distanceToGo": 0, "dtg": { "x": 0, "y": 0, "z": 0 }, "queueDepth": 0, "activeDepth": 0, "cycle": 20, "taskCycle": 2, "halChangedPinCount": 0 }, "axisPose": { "x": 0, "y": 0, "z": 0, "a": 0, "b": 0, "c": 0 }, "dro": { "x": 0, "y": 0, "z": 0, "a": 0, "b": 0, "c": 0, "tcpX": 0, "tcpY": 0, "tcpZ": 0, "dtgX": 0, "dtgY": 0, "dtgZ": 0 }, "programUiExecution": { "apiName": "web-rtcp-5axis-ui-gcode-live-execution", "status": "estopped", "source": "programAxisPreviewPath.samples", "samplePeriodMs": 50, "sampleIndex": 0, "sampleCount": 1300, "executedSampleCount": 1, "timeMs": 0, "activeProgram": "configs/sim/axis/vismach/5axis/table-rotary-tilting/demos/xyzbc_switchkins.ngc", "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 16, "statement": "g53 g0 x0y0 z# b0 c0 ; quadrant I", "operation": "rapid-machine-reset", "executionIndex": 2, "gcodeStepIndex": 16, "segmentIndex": 0, "motionType": "rapid", "activeKinematics": "identity", "joint": { "x": 0, "y": 0, "z": 0, "a": 0, "b": 0, "c": 0 }, "tcp": { "x": 0, "y": 0, "z": 10 }, "toolAxis": { "i": 0, "j": 0, "k": 1 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "machineState": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "semanticBoundary": "ui_updates_from_real_expanded_linuxcnc_gcode_sample_stream" }, "samplePeriodMs": 50, "sampleCount": 1300, "gcodeExecutionProcess": { "apiName": "linuxcnc-xyzbc-trt-gcode-complete-execution-process", "status": "ok", "program": "xyzbc_switchkins.ngc", "sourceFiles": [ { "sourceFile": "xyzbc_switchkins.ngc", "lineCount": 3 }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "lineCount": 41 }, { "sourceFile": "helix_bc.ngc", "lineCount": 21 } ], "executionStepCount": 128, "sourceLineCoverage": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 1, "statement": "; zmax zmin r frate n a b c dist", "sourceLineKind": "comment", "visitCount": 1, "producedMotionCount": 0, "operations": [ "comment" ] }, { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "statement": "o call [10] [5] [10][1000][3][0][20][45][20]", "sourceLineKind": "call", "visitCount": 1, "producedMotionCount": 0, "operations": [ "call-subroutine" ] }, { "sourceFile": "xyzbc_switchkins.ngc", "line": 3, "statement": "m2", "sourceLineKind": "mcode", "visitCount": 1, "producedMotionCount": 0, "operations": [ "program-end" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 1, "statement": "; ngcgui-compatible subroutine", "sourceLineKind": "comment", "visitCount": 1, "producedMotionCount": 0, "operations": [ "comment" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 2, "statement": "(info: helix in each quadrant at angles B,C)", "sourceLineKind": "comment", "visitCount": 1, "producedMotionCount": 0, "operations": [ "info-comment" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 3, "statement": "osub", "sourceLineKind": "subroutine-boundary", "visitCount": 1, "producedMotionCount": 0, "operations": [ "subroutine-enter" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 4, "statement": "# = #1 (=10)", "sourceLineKind": "assignment", "visitCount": 1, "producedMotionCount": 0, "operations": [ "parameter-assignment" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 5, "statement": "# = #2 (= 5)", "sourceLineKind": "assignment", "visitCount": 1, "producedMotionCount": 0, "operations": [ "parameter-assignment" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 6, "statement": "# = #3 (=10 radius)", "sourceLineKind": "assignment", "visitCount": 1, "producedMotionCount": 0, "operations": [ "parameter-assignment" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 7, "statement": "# = #4 (=1000 feedrate)", "sourceLineKind": "assignment", "visitCount": 1, "producedMotionCount": 0, "operations": [ "parameter-assignment" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 8, "statement": "# = #5 (=3 n circles)", "sourceLineKind": "assignment", "visitCount": 1, "producedMotionCount": 0, "operations": [ "parameter-assignment" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 9, "statement": "# = #6 (=0 A angle NA)", "sourceLineKind": "assignment", "visitCount": 1, "producedMotionCount": 0, "operations": [ "parameter-assignment" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 10, "statement": "# = #7 (=30 B angle)", "sourceLineKind": "assignment", "visitCount": 1, "producedMotionCount": 0, "operations": [ "parameter-assignment" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 11, "statement": "# = #8 (=45 C angle)", "sourceLineKind": "assignment", "visitCount": 1, "producedMotionCount": 0, "operations": [ "parameter-assignment" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 12, "statement": "# = #9 (=20 distance)", "sourceLineKind": "assignment", "visitCount": 1, "producedMotionCount": 0, "operations": [ "parameter-assignment" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 14, "statement": "; quadrant I", "sourceLineKind": "comment", "visitCount": 1, "producedMotionCount": 0, "operations": [ "comment-quadrant-I" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 15, "statement": "M429 ;Identity kinematics", "sourceLineKind": "mcode", "visitCount": 1, "producedMotionCount": 0, "operations": [ "switchkins-identity" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 16, "statement": "g53 g0 x0y0 z# b0 c0 ;MACHINE coordinates", "sourceLineKind": "motion", "visitCount": 1, "producedMotionCount": 1, "operations": [ "rapid-machine-reset" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 17, "statement": "g10l20p0 x0y0 z# b0 c0 ;new g54", "sourceLineKind": "offset", "visitCount": 1, "producedMotionCount": 0, "operations": [ "set-g54-offset" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 18, "statement": "g0 x+# y+# z# ;move to pattern center position", "sourceLineKind": "motion", "visitCount": 1, "producedMotionCount": 1, "operations": [ "rapid-to-quadrant-center" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "statement": "o call [#][#][#][#][#][#][#][#]", "sourceLineKind": "call", "visitCount": 1, "producedMotionCount": 0, "operations": [ "call-subroutine" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 21, "statement": "; quadrant II", "sourceLineKind": "comment", "visitCount": 1, "producedMotionCount": 0, "operations": [ "comment-quadrant-II" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 22, "statement": "M429 ;Identity kinematics", "sourceLineKind": "mcode", "visitCount": 1, "producedMotionCount": 0, "operations": [ "switchkins-identity" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 23, "statement": "g53 g0 x0y0 z# b0 c0", "sourceLineKind": "motion", "visitCount": 1, "producedMotionCount": 1, "operations": [ "rapid-machine-reset" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 24, "statement": "g10l20p0 x0y0 z# b0 c0", "sourceLineKind": "offset", "visitCount": 1, "producedMotionCount": 0, "operations": [ "set-g54-offset" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 25, "statement": "g0 x-# y+# z#", "sourceLineKind": "motion", "visitCount": 1, "producedMotionCount": 1, "operations": [ "rapid-to-quadrant-center" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "statement": "o call [#][#][#][#][#][#][#][#]", "sourceLineKind": "call", "visitCount": 1, "producedMotionCount": 0, "operations": [ "call-subroutine" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 28, "statement": "; quadrant III", "sourceLineKind": "comment", "visitCount": 1, "producedMotionCount": 0, "operations": [ "comment-quadrant-III" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 29, "statement": "M429 ;Identity kinematics", "sourceLineKind": "mcode", "visitCount": 1, "producedMotionCount": 0, "operations": [ "switchkins-identity" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 30, "statement": "g53 g0 x0y0 z# b0 c0", "sourceLineKind": "motion", "visitCount": 1, "producedMotionCount": 1, "operations": [ "rapid-machine-reset" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 31, "statement": "g10l20p0 x0y0 z# b0 c0", "sourceLineKind": "offset", "visitCount": 1, "producedMotionCount": 0, "operations": [ "set-g54-offset" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 32, "statement": "g0 x-# y-# z#", "sourceLineKind": "motion", "visitCount": 1, "producedMotionCount": 1, "operations": [ "rapid-to-quadrant-center" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "statement": "o call [#][#][#][#][#][#][#][#]", "sourceLineKind": "call", "visitCount": 1, "producedMotionCount": 0, "operations": [ "call-subroutine" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 35, "statement": "; quadrant IV", "sourceLineKind": "comment", "visitCount": 1, "producedMotionCount": 0, "operations": [ "comment-quadrant-IV" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 36, "statement": "M429 ;Identity kinematics", "sourceLineKind": "mcode", "visitCount": 1, "producedMotionCount": 0, "operations": [ "switchkins-identity" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 37, "statement": "g53 g0 x0y0 z# b0 c0", "sourceLineKind": "motion", "visitCount": 1, "producedMotionCount": 1, "operations": [ "rapid-machine-reset" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 38, "statement": "g10l20p0 x0y0 z# b0 c0", "sourceLineKind": "offset", "visitCount": 1, "producedMotionCount": 0, "operations": [ "set-g54-offset" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 39, "statement": "g0 x+# y-# z#", "sourceLineKind": "motion", "visitCount": 1, "producedMotionCount": 1, "operations": [ "rapid-to-quadrant-center" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "statement": "o call [#][#][#][#][#][#][#][#]", "sourceLineKind": "call", "visitCount": 1, "producedMotionCount": 0, "operations": [ "call-subroutine" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 42, "statement": ";final position", "sourceLineKind": "comment", "visitCount": 1, "producedMotionCount": 0, "operations": [ "comment-final-position" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 43, "statement": "M429 ;Identity kinematics", "sourceLineKind": "mcode", "visitCount": 1, "producedMotionCount": 0, "operations": [ "switchkins-identity" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 44, "statement": "g53 g0 x0y0 z# ;MACHINE coordinates", "sourceLineKind": "motion", "visitCount": 1, "producedMotionCount": 1, "operations": [ "rapid-final-machine-reset" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 45, "statement": "g10l20p0 x0y0 z# ;new g54", "sourceLineKind": "offset", "visitCount": 1, "producedMotionCount": 0, "operations": [ "set-g54-offset" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 47, "statement": "oendsub", "sourceLineKind": "subroutine-boundary", "visitCount": 1, "producedMotionCount": 0, "operations": [ "subroutine-exit" ] }, { "sourceFile": "helix_bc.ngc", "line": 1, "statement": "; helix using switchkins (xyzbc) b,c angles", "sourceLineKind": "comment", "visitCount": 4, "producedMotionCount": 0, "operations": [ "comment" ] }, { "sourceFile": "helix_bc.ngc", "line": 2, "statement": "osub", "sourceLineKind": "subroutine-boundary", "visitCount": 4, "producedMotionCount": 0, "operations": [ "subroutine-enter" ] }, { "sourceFile": "helix_bc.ngc", "line": 3, "statement": "# = #1 (=10)", "sourceLineKind": "assignment", "visitCount": 4, "producedMotionCount": 0, "operations": [ "parameter-assignment" ] }, { "sourceFile": "helix_bc.ngc", "line": 4, "statement": "# = #2 (= 5)", "sourceLineKind": "assignment", "visitCount": 4, "producedMotionCount": 0, "operations": [ "parameter-assignment" ] }, { "sourceFile": "helix_bc.ngc", "line": 5, "statement": "# = #3 (=10)", "sourceLineKind": "assignment", "visitCount": 4, "producedMotionCount": 0, "operations": [ "parameter-assignment" ] }, { "sourceFile": "helix_bc.ngc", "line": 6, "statement": "# = #4 (=1000)", "sourceLineKind": "assignment", "visitCount": 4, "producedMotionCount": 0, "operations": [ "parameter-assignment" ] }, { "sourceFile": "helix_bc.ngc", "line": 7, "statement": "# = #5 (=3)", "sourceLineKind": "assignment", "visitCount": 4, "producedMotionCount": 0, "operations": [ "parameter-assignment" ] }, { "sourceFile": "helix_bc.ngc", "line": 8, "statement": "# = #6 (=0 NA)", "sourceLineKind": "assignment", "visitCount": 4, "producedMotionCount": 0, "operations": [ "parameter-assignment" ] }, { "sourceFile": "helix_bc.ngc", "line": 9, "statement": "# = #7 (=45)", "sourceLineKind": "assignment", "visitCount": 4, "producedMotionCount": 0, "operations": [ "parameter-assignment" ] }, { "sourceFile": "helix_bc.ngc", "line": 10, "statement": "# = #8 (=20)", "sourceLineKind": "assignment", "visitCount": 4, "producedMotionCount": 0, "operations": [ "parameter-assignment" ] }, { "sourceFile": "helix_bc.ngc", "line": 12, "statement": "M429 ;Identity kinematics", "sourceLineKind": "mcode", "visitCount": 4, "producedMotionCount": 0, "operations": [ "switchkins-identity" ] }, { "sourceFile": "helix_bc.ngc", "line": 13, "statement": "g0 x[#<_x> - #] ;adjust for radius", "sourceLineKind": "motion", "visitCount": 4, "producedMotionCount": 4, "operations": [ "rapid-radius-adjust" ] }, { "sourceFile": "helix_bc.ngc", "line": 14, "statement": "g10l20p0 x0y0 z# b0 c0 ;new g54", "sourceLineKind": "offset", "visitCount": 4, "producedMotionCount": 0, "operations": [ "set-g54-offset" ] }, { "sourceFile": "helix_bc.ngc", "line": 15, "statement": "M428 ;XYZBC", "sourceLineKind": "mcode", "visitCount": 4, "producedMotionCount": 0, "operations": [ "switchkins-tcp-xyzbc" ] }, { "sourceFile": "helix_bc.ngc", "line": 16, "statement": "g0b#c# ;exercise b,c", "sourceLineKind": "motion", "visitCount": 4, "producedMotionCount": 4, "operations": [ "rapid-bc-orient" ] }, { "sourceFile": "helix_bc.ngc", "line": 17, "statement": "f# g2i#z# p# ;helix", "sourceLineKind": "motion", "visitCount": 4, "producedMotionCount": 4, "operations": [ "feed-helix" ] }, { "sourceFile": "helix_bc.ngc", "line": 18, "statement": "M429 ;Identity kinematics", "sourceLineKind": "mcode", "visitCount": 4, "producedMotionCount": 0, "operations": [ "switchkins-identity" ] }, { "sourceFile": "helix_bc.ngc", "line": 19, "statement": "g0 x0 y0 z# b0 c0 ;return to start", "sourceLineKind": "motion", "visitCount": 4, "producedMotionCount": 4, "operations": [ "rapid-return-to-start" ] }, { "sourceFile": "helix_bc.ngc", "line": 20, "statement": "g0 x[#<_x> + #] ;adjust restore", "sourceLineKind": "motion", "visitCount": 4, "producedMotionCount": 4, "operations": [ "rapid-radius-restore" ] }, { "sourceFile": "helix_bc.ngc", "line": 21, "statement": "M428 ;XYZBC", "sourceLineKind": "mcode", "visitCount": 4, "producedMotionCount": 0, "operations": [ "switchkins-tcp-xyzbc" ] }, { "sourceFile": "helix_bc.ngc", "line": 22, "statement": "oendsub", "sourceLineKind": "subroutine-boundary", "visitCount": 4, "producedMotionCount": 0, "operations": [ "subroutine-exit" ] } ], "executionSteps": [ { "stepIndex": 0, "sourceFile": "xyzbc_switchkins.ngc", "line": 1, "statement": "; zmax zmin r frate n a b c dist", "callDepth": 0, "callStack": [], "executed": false, "sourceLineKind": "comment", "result": { "status": "ok", "operation": "comment", "sourceLineKind": "comment", "executed": false, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 1, "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "statement": "o call [10] [5] [10][1000][3][0][20][45][20]", "callDepth": 0, "callStack": [], "executed": true, "sourceLineKind": "call", "result": { "status": "ok", "operation": "call-subroutine", "sourceLineKind": "call", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 0, "notes": [] } }, { "stepIndex": 2, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 1, "statement": "; ngcgui-compatible subroutine", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": false, "sourceLineKind": "comment", "result": { "status": "ok", "operation": "comment", "sourceLineKind": "comment", "executed": false, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 3, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 2, "statement": "(info: helix in each quadrant at angles B,C)", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": false, "sourceLineKind": "comment", "result": { "status": "ok", "operation": "info-comment", "sourceLineKind": "comment", "executed": false, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 4, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 3, "statement": "osub", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "subroutine-boundary", "result": { "status": "ok", "operation": "subroutine-enter", "sourceLineKind": "subroutine-boundary", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 5, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 4, "statement": "# = #1 (=10)", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": {}, "parametersChanged": { "zmax": 10 }, "parametersAfter": { "zmax": 10 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 6, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 5, "statement": "# = #2 (= 5)", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10 }, "parametersChanged": { "zmin": 5 }, "parametersAfter": { "zmax": 10, "zmin": 5 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 7, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 6, "statement": "# = #3 (=10 radius)", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5 }, "parametersChanged": { "r": 10 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 8, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 7, "statement": "# = #4 (=1000 feedrate)", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10 }, "parametersChanged": { "frate": 1000 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 9, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 8, "statement": "# = #5 (=3 n circles)", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000 }, "parametersChanged": { "n": 3 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 10, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 9, "statement": "# = #6 (=0 A angle NA)", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3 }, "parametersChanged": { "a": 0 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 11, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 10, "statement": "# = #7 (=30 B angle)", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0 }, "parametersChanged": { "b": 20 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 12, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 11, "statement": "# = #8 (=45 C angle)", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20 }, "parametersChanged": { "c": 45 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 13, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 12, "statement": "# = #9 (=20 distance)", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45 }, "parametersChanged": { "dist": 20 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 14, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 14, "statement": "; quadrant I", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": false, "sourceLineKind": "comment", "result": { "status": "ok", "operation": "comment-quadrant-I", "sourceLineKind": "comment", "executed": false, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 15, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 15, "statement": "M429 ;Identity kinematics", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-identity", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "identity", "code": "M429" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 1, "notes": [] } }, { "stepIndex": 16, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 16, "statement": "g53 g0 x0y0 z# b0 c0 ;MACHINE coordinates", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-machine-reset", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 0, "motionType": "rapid", "feed": 2100, "startJoint": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": 0, "y": 0, "z": 10 }, "endTcp": { "x": 0, "y": 0, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 2, "notes": [] } }, { "stepIndex": 17, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 17, "statement": "g10l20p0 x0y0 z# b0 c0 ;new g54", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "offset", "result": { "status": "ok", "operation": "set-g54-offset", "sourceLineKind": "offset", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "workOffsetAfter": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "modalChange": { "coordinateSystem": "G54", "code": "G10 L20 P0" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 3, "notes": [] } }, { "stepIndex": 18, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 18, "statement": "g0 x+# y+# z# ;move to pattern center position", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-to-quadrant-center", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 1, "motionType": "rapid", "feed": 2100, "startJoint": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": 20, "y": 20, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": 0, "y": 0, "z": 10 }, "endTcp": { "x": 20, "y": 20, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 4, "notes": [] } }, { "stepIndex": 19, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "statement": "o call [#][#][#][#][#][#][#][#]", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "call", "result": { "status": "ok", "operation": "call-subroutine", "sourceLineKind": "call", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 5, "notes": [] } }, { "stepIndex": 20, "sourceFile": "helix_bc.ngc", "line": 1, "statement": "; helix using switchkins (xyzbc) b,c angles", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": false, "sourceLineKind": "comment", "result": { "status": "ok", "operation": "comment", "sourceLineKind": "comment", "executed": false, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 21, "sourceFile": "helix_bc.ngc", "line": 2, "statement": "osub", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": true, "sourceLineKind": "subroutine-boundary", "result": { "status": "ok", "operation": "subroutine-enter", "sourceLineKind": "subroutine-boundary", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 22, "sourceFile": "helix_bc.ngc", "line": 3, "statement": "# = #1 (=10)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "zmax": 10 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 23, "sourceFile": "helix_bc.ngc", "line": 4, "statement": "# = #2 (= 5)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "zmin": 5 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 24, "sourceFile": "helix_bc.ngc", "line": 5, "statement": "# = #3 (=10)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "r": 10 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 25, "sourceFile": "helix_bc.ngc", "line": 6, "statement": "# = #4 (=1000)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "frate": 1000 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 26, "sourceFile": "helix_bc.ngc", "line": 7, "statement": "# = #5 (=3)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "n": 3 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 27, "sourceFile": "helix_bc.ngc", "line": 8, "statement": "# = #6 (=0 NA)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "a": 0 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 28, "sourceFile": "helix_bc.ngc", "line": 9, "statement": "# = #7 (=45)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "b": 20 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 29, "sourceFile": "helix_bc.ngc", "line": 10, "statement": "# = #8 (=20)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "c": 45 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 30, "sourceFile": "helix_bc.ngc", "line": 12, "statement": "M429 ;Identity kinematics", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-identity", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "identity", "code": "M429" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 6, "notes": [] } }, { "stepIndex": 31, "sourceFile": "helix_bc.ngc", "line": 13, "statement": "g0 x[#<_x> - #] ;adjust for radius", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-radius-adjust", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 2, "motionType": "rapid", "feed": 2100, "startJoint": { "x": 20, "y": 20, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": 10, "y": 20, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": 20, "y": 20, "z": 10 }, "endTcp": { "x": 10, "y": 20, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 7, "notes": [] } }, { "stepIndex": 32, "sourceFile": "helix_bc.ngc", "line": 14, "statement": "g10l20p0 x0y0 z# b0 c0 ;new g54", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": true, "sourceLineKind": "offset", "result": { "status": "ok", "operation": "set-g54-offset", "sourceLineKind": "offset", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "workOffsetAfter": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "modalChange": { "coordinateSystem": "G54", "code": "G10 L20 P0" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 8, "notes": [] } }, { "stepIndex": 33, "sourceFile": "helix_bc.ngc", "line": 15, "statement": "M428 ;XYZBC", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-tcp-xyzbc", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "tcp-xyzbc", "code": "M428" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 9, "notes": [] } }, { "stepIndex": 34, "sourceFile": "helix_bc.ngc", "line": 16, "statement": "g0b#c# ;exercise b,c", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-bc-orient", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 3, "motionType": "rapid", "feed": 2100, "startJoint": { "x": 10, "y": 20, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": 10, "y": 20, "z": 10, "b": 20, "c": 45 }, "startTcp": { "x": 10, "y": 20, "z": 10 }, "endTcp": { "x": 10, "y": 20, "z": 10 }, "endToolAxis": { "i": 0.24184476264797528, "j": 0.24184476264797522, "k": 0.9396926207859084 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 10, "notes": [] } }, { "stepIndex": 35, "sourceFile": "helix_bc.ngc", "line": 17, "statement": "f# g2i#z# p# ;helix", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "feed-helix", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 4, "motionType": "arc", "feed": 1000, "startJoint": { "x": 10, "y": 20, "z": 10, "b": 20, "c": 45 }, "endJoint": { "x": 10, "y": 20, "z": 5, "b": 20, "c": 45 }, "startTcp": { "x": 10, "y": 20, "z": 10 }, "endTcp": { "x": 10, "y": 20, "z": 5 }, "endToolAxis": { "i": 0.24184476264797528, "j": 0.24184476264797522, "k": 0.9396926207859084 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 1000, "actualMmPerMin": 1000, "overridePercent": 100 }, "cutting": { "active": true, "cuttingSpeedMmPerMin": 1000 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 11, "notes": [] } }, { "stepIndex": 36, "sourceFile": "helix_bc.ngc", "line": 18, "statement": "M429 ;Identity kinematics", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-identity", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "identity", "code": "M429" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 1000, "actualMmPerMin": 1000, "overridePercent": 100 }, "cutting": { "active": true, "cuttingSpeedMmPerMin": 1000 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 1000, "actualMmPerMin": 1000, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 12, "notes": [] } }, { "stepIndex": 37, "sourceFile": "helix_bc.ngc", "line": 19, "statement": "g0 x0 y0 z# b0 c0 ;return to start", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-return-to-start", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 5, "motionType": "rapid", "feed": 2100, "startJoint": { "x": 10, "y": 20, "z": 5, "b": 20, "c": 45 }, "endJoint": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": 10, "y": 20, "z": 5 }, "endTcp": { "x": 0, "y": 0, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 1000, "actualMmPerMin": 1000, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 13, "notes": [] } }, { "stepIndex": 38, "sourceFile": "helix_bc.ngc", "line": 20, "statement": "g0 x[#<_x> + #] ;adjust restore", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-radius-restore", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 6, "motionType": "rapid", "feed": 2100, "startJoint": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": 10, "y": 0, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": 0, "y": 0, "z": 10 }, "endTcp": { "x": 10, "y": 0, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 14, "notes": [] } }, { "stepIndex": 39, "sourceFile": "helix_bc.ngc", "line": 21, "statement": "M428 ;XYZBC", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-tcp-xyzbc", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "tcp-xyzbc", "code": "M428" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 15, "notes": [] } }, { "stepIndex": 40, "sourceFile": "helix_bc.ngc", "line": 22, "statement": "oendsub", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": true, "sourceLineKind": "subroutine-boundary", "result": { "status": "ok", "operation": "subroutine-exit", "sourceLineKind": "subroutine-boundary", "executed": true, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 41, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 21, "statement": "; quadrant II", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": false, "sourceLineKind": "comment", "result": { "status": "ok", "operation": "comment-quadrant-II", "sourceLineKind": "comment", "executed": false, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 42, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 22, "statement": "M429 ;Identity kinematics", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-identity", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "identity", "code": "M429" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 16, "notes": [] } }, { "stepIndex": 43, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 23, "statement": "g53 g0 x0y0 z# b0 c0", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-machine-reset", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 7, "motionType": "rapid", "feed": 2100, "startJoint": { "x": 10, "y": 0, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": 10, "y": 0, "z": 10 }, "endTcp": { "x": 0, "y": 0, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 17, "notes": [] } }, { "stepIndex": 44, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 24, "statement": "g10l20p0 x0y0 z# b0 c0", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "offset", "result": { "status": "ok", "operation": "set-g54-offset", "sourceLineKind": "offset", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "workOffsetAfter": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "modalChange": { "coordinateSystem": "G54", "code": "G10 L20 P0" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 18, "notes": [] } }, { "stepIndex": 45, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 25, "statement": "g0 x-# y+# z#", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-to-quadrant-center", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 8, "motionType": "rapid", "feed": 2100, "startJoint": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": -20, "y": 20, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": 0, "y": 0, "z": 10 }, "endTcp": { "x": -20, "y": 20, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 19, "notes": [] } }, { "stepIndex": 46, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "statement": "o call [#][#][#][#][#][#][#][#]", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "call", "result": { "status": "ok", "operation": "call-subroutine", "sourceLineKind": "call", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 20, "notes": [] } }, { "stepIndex": 47, "sourceFile": "helix_bc.ngc", "line": 1, "statement": "; helix using switchkins (xyzbc) b,c angles", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": false, "sourceLineKind": "comment", "result": { "status": "ok", "operation": "comment", "sourceLineKind": "comment", "executed": false, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 48, "sourceFile": "helix_bc.ngc", "line": 2, "statement": "osub", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": true, "sourceLineKind": "subroutine-boundary", "result": { "status": "ok", "operation": "subroutine-enter", "sourceLineKind": "subroutine-boundary", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 49, "sourceFile": "helix_bc.ngc", "line": 3, "statement": "# = #1 (=10)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "zmax": 10 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 50, "sourceFile": "helix_bc.ngc", "line": 4, "statement": "# = #2 (= 5)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "zmin": 5 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 51, "sourceFile": "helix_bc.ngc", "line": 5, "statement": "# = #3 (=10)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "r": 10 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 52, "sourceFile": "helix_bc.ngc", "line": 6, "statement": "# = #4 (=1000)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "frate": 1000 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 53, "sourceFile": "helix_bc.ngc", "line": 7, "statement": "# = #5 (=3)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "n": 3 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 54, "sourceFile": "helix_bc.ngc", "line": 8, "statement": "# = #6 (=0 NA)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "a": 0 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 55, "sourceFile": "helix_bc.ngc", "line": 9, "statement": "# = #7 (=45)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "b": 20 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 56, "sourceFile": "helix_bc.ngc", "line": 10, "statement": "# = #8 (=20)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "c": 45 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 57, "sourceFile": "helix_bc.ngc", "line": 12, "statement": "M429 ;Identity kinematics", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-identity", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "identity", "code": "M429" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 21, "notes": [] } }, { "stepIndex": 58, "sourceFile": "helix_bc.ngc", "line": 13, "statement": "g0 x[#<_x> - #] ;adjust for radius", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-radius-adjust", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 9, "motionType": "rapid", "feed": 2100, "startJoint": { "x": -20, "y": 20, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": -30, "y": 20, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": -20, "y": 20, "z": 10 }, "endTcp": { "x": -30, "y": 20, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 22, "notes": [] } }, { "stepIndex": 59, "sourceFile": "helix_bc.ngc", "line": 14, "statement": "g10l20p0 x0y0 z# b0 c0 ;new g54", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": true, "sourceLineKind": "offset", "result": { "status": "ok", "operation": "set-g54-offset", "sourceLineKind": "offset", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "workOffsetAfter": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "modalChange": { "coordinateSystem": "G54", "code": "G10 L20 P0" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 23, "notes": [] } }, { "stepIndex": 60, "sourceFile": "helix_bc.ngc", "line": 15, "statement": "M428 ;XYZBC", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-tcp-xyzbc", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "tcp-xyzbc", "code": "M428" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 24, "notes": [] } }, { "stepIndex": 61, "sourceFile": "helix_bc.ngc", "line": 16, "statement": "g0b#c# ;exercise b,c", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-bc-orient", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 10, "motionType": "rapid", "feed": 2100, "startJoint": { "x": -30, "y": 20, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": -30, "y": 20, "z": 10, "b": 20, "c": 45 }, "startTcp": { "x": -30, "y": 20, "z": 10 }, "endTcp": { "x": -30, "y": 20, "z": 10 }, "endToolAxis": { "i": 0.24184476264797528, "j": 0.24184476264797522, "k": 0.9396926207859084 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 25, "notes": [] } }, { "stepIndex": 62, "sourceFile": "helix_bc.ngc", "line": 17, "statement": "f# g2i#z# p# ;helix", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "feed-helix", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 11, "motionType": "arc", "feed": 1000, "startJoint": { "x": -30, "y": 20, "z": 10, "b": 20, "c": 45 }, "endJoint": { "x": -30, "y": 20, "z": 5, "b": 20, "c": 45 }, "startTcp": { "x": -30, "y": 20, "z": 10 }, "endTcp": { "x": -30, "y": 20, "z": 5 }, "endToolAxis": { "i": 0.24184476264797528, "j": 0.24184476264797522, "k": 0.9396926207859084 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 1000, "actualMmPerMin": 1000, "overridePercent": 100 }, "cutting": { "active": true, "cuttingSpeedMmPerMin": 1000 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 26, "notes": [] } }, { "stepIndex": 63, "sourceFile": "helix_bc.ngc", "line": 18, "statement": "M429 ;Identity kinematics", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-identity", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "identity", "code": "M429" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 1000, "actualMmPerMin": 1000, "overridePercent": 100 }, "cutting": { "active": true, "cuttingSpeedMmPerMin": 1000 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 1000, "actualMmPerMin": 1000, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 27, "notes": [] } }, { "stepIndex": 64, "sourceFile": "helix_bc.ngc", "line": 19, "statement": "g0 x0 y0 z# b0 c0 ;return to start", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-return-to-start", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 12, "motionType": "rapid", "feed": 2100, "startJoint": { "x": -30, "y": 20, "z": 5, "b": 20, "c": 45 }, "endJoint": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": -30, "y": 20, "z": 5 }, "endTcp": { "x": 0, "y": 0, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 1000, "actualMmPerMin": 1000, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 28, "notes": [] } }, { "stepIndex": 65, "sourceFile": "helix_bc.ngc", "line": 20, "statement": "g0 x[#<_x> + #] ;adjust restore", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-radius-restore", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 13, "motionType": "rapid", "feed": 2100, "startJoint": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": 10, "y": 0, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": 0, "y": 0, "z": 10 }, "endTcp": { "x": 10, "y": 0, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 29, "notes": [] } }, { "stepIndex": 66, "sourceFile": "helix_bc.ngc", "line": 21, "statement": "M428 ;XYZBC", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-tcp-xyzbc", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "tcp-xyzbc", "code": "M428" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 30, "notes": [] } }, { "stepIndex": 67, "sourceFile": "helix_bc.ngc", "line": 22, "statement": "oendsub", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": true, "sourceLineKind": "subroutine-boundary", "result": { "status": "ok", "operation": "subroutine-exit", "sourceLineKind": "subroutine-boundary", "executed": true, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 68, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 28, "statement": "; quadrant III", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": false, "sourceLineKind": "comment", "result": { "status": "ok", "operation": "comment-quadrant-III", "sourceLineKind": "comment", "executed": false, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 69, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 29, "statement": "M429 ;Identity kinematics", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-identity", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "identity", "code": "M429" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 31, "notes": [] } }, { "stepIndex": 70, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 30, "statement": "g53 g0 x0y0 z# b0 c0", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-machine-reset", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 14, "motionType": "rapid", "feed": 2100, "startJoint": { "x": 10, "y": 0, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": 10, "y": 0, "z": 10 }, "endTcp": { "x": 0, "y": 0, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 32, "notes": [] } }, { "stepIndex": 71, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 31, "statement": "g10l20p0 x0y0 z# b0 c0", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "offset", "result": { "status": "ok", "operation": "set-g54-offset", "sourceLineKind": "offset", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "workOffsetAfter": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "modalChange": { "coordinateSystem": "G54", "code": "G10 L20 P0" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 33, "notes": [] } }, { "stepIndex": 72, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 32, "statement": "g0 x-# y-# z#", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-to-quadrant-center", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 15, "motionType": "rapid", "feed": 2100, "startJoint": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": -20, "y": -20, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": 0, "y": 0, "z": 10 }, "endTcp": { "x": -20, "y": -20, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 34, "notes": [] } }, { "stepIndex": 73, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "statement": "o call [#][#][#][#][#][#][#][#]", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "call", "result": { "status": "ok", "operation": "call-subroutine", "sourceLineKind": "call", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 35, "notes": [] } }, { "stepIndex": 74, "sourceFile": "helix_bc.ngc", "line": 1, "statement": "; helix using switchkins (xyzbc) b,c angles", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": false, "sourceLineKind": "comment", "result": { "status": "ok", "operation": "comment", "sourceLineKind": "comment", "executed": false, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 75, "sourceFile": "helix_bc.ngc", "line": 2, "statement": "osub", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": true, "sourceLineKind": "subroutine-boundary", "result": { "status": "ok", "operation": "subroutine-enter", "sourceLineKind": "subroutine-boundary", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 76, "sourceFile": "helix_bc.ngc", "line": 3, "statement": "# = #1 (=10)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "zmax": 10 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 77, "sourceFile": "helix_bc.ngc", "line": 4, "statement": "# = #2 (= 5)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "zmin": 5 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 78, "sourceFile": "helix_bc.ngc", "line": 5, "statement": "# = #3 (=10)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "r": 10 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 79, "sourceFile": "helix_bc.ngc", "line": 6, "statement": "# = #4 (=1000)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "frate": 1000 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 80, "sourceFile": "helix_bc.ngc", "line": 7, "statement": "# = #5 (=3)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "n": 3 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 81, "sourceFile": "helix_bc.ngc", "line": 8, "statement": "# = #6 (=0 NA)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "a": 0 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 82, "sourceFile": "helix_bc.ngc", "line": 9, "statement": "# = #7 (=45)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "b": 20 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 83, "sourceFile": "helix_bc.ngc", "line": 10, "statement": "# = #8 (=20)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "c": 45 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 84, "sourceFile": "helix_bc.ngc", "line": 12, "statement": "M429 ;Identity kinematics", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-identity", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "identity", "code": "M429" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 36, "notes": [] } }, { "stepIndex": 85, "sourceFile": "helix_bc.ngc", "line": 13, "statement": "g0 x[#<_x> - #] ;adjust for radius", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-radius-adjust", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 16, "motionType": "rapid", "feed": 2100, "startJoint": { "x": -20, "y": -20, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": -30, "y": -20, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": -20, "y": -20, "z": 10 }, "endTcp": { "x": -30, "y": -20, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 37, "notes": [] } }, { "stepIndex": 86, "sourceFile": "helix_bc.ngc", "line": 14, "statement": "g10l20p0 x0y0 z# b0 c0 ;new g54", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": true, "sourceLineKind": "offset", "result": { "status": "ok", "operation": "set-g54-offset", "sourceLineKind": "offset", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "workOffsetAfter": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "modalChange": { "coordinateSystem": "G54", "code": "G10 L20 P0" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 38, "notes": [] } }, { "stepIndex": 87, "sourceFile": "helix_bc.ngc", "line": 15, "statement": "M428 ;XYZBC", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-tcp-xyzbc", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "tcp-xyzbc", "code": "M428" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 39, "notes": [] } }, { "stepIndex": 88, "sourceFile": "helix_bc.ngc", "line": 16, "statement": "g0b#c# ;exercise b,c", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-bc-orient", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 17, "motionType": "rapid", "feed": 2100, "startJoint": { "x": -30, "y": -20, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": -30, "y": -20, "z": 10, "b": 20, "c": 45 }, "startTcp": { "x": -30, "y": -20, "z": 10 }, "endTcp": { "x": -30, "y": -20, "z": 10 }, "endToolAxis": { "i": 0.24184476264797528, "j": 0.24184476264797522, "k": 0.9396926207859084 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 40, "notes": [] } }, { "stepIndex": 89, "sourceFile": "helix_bc.ngc", "line": 17, "statement": "f# g2i#z# p# ;helix", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "feed-helix", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 18, "motionType": "arc", "feed": 1000, "startJoint": { "x": -30, "y": -20, "z": 10, "b": 20, "c": 45 }, "endJoint": { "x": -30, "y": -20, "z": 5, "b": 20, "c": 45 }, "startTcp": { "x": -30, "y": -20, "z": 10 }, "endTcp": { "x": -30, "y": -20, "z": 5 }, "endToolAxis": { "i": 0.24184476264797528, "j": 0.24184476264797522, "k": 0.9396926207859084 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 1000, "actualMmPerMin": 1000, "overridePercent": 100 }, "cutting": { "active": true, "cuttingSpeedMmPerMin": 1000 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 41, "notes": [] } }, { "stepIndex": 90, "sourceFile": "helix_bc.ngc", "line": 18, "statement": "M429 ;Identity kinematics", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-identity", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "identity", "code": "M429" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 1000, "actualMmPerMin": 1000, "overridePercent": 100 }, "cutting": { "active": true, "cuttingSpeedMmPerMin": 1000 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 1000, "actualMmPerMin": 1000, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 42, "notes": [] } }, { "stepIndex": 91, "sourceFile": "helix_bc.ngc", "line": 19, "statement": "g0 x0 y0 z# b0 c0 ;return to start", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-return-to-start", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 19, "motionType": "rapid", "feed": 2100, "startJoint": { "x": -30, "y": -20, "z": 5, "b": 20, "c": 45 }, "endJoint": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": -30, "y": -20, "z": 5 }, "endTcp": { "x": 0, "y": 0, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 1000, "actualMmPerMin": 1000, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 43, "notes": [] } }, { "stepIndex": 92, "sourceFile": "helix_bc.ngc", "line": 20, "statement": "g0 x[#<_x> + #] ;adjust restore", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-radius-restore", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 20, "motionType": "rapid", "feed": 2100, "startJoint": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": 10, "y": 0, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": 0, "y": 0, "z": 10 }, "endTcp": { "x": 10, "y": 0, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 44, "notes": [] } }, { "stepIndex": 93, "sourceFile": "helix_bc.ngc", "line": 21, "statement": "M428 ;XYZBC", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-tcp-xyzbc", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "tcp-xyzbc", "code": "M428" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 45, "notes": [] } }, { "stepIndex": 94, "sourceFile": "helix_bc.ngc", "line": 22, "statement": "oendsub", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": true, "sourceLineKind": "subroutine-boundary", "result": { "status": "ok", "operation": "subroutine-exit", "sourceLineKind": "subroutine-boundary", "executed": true, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 95, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 35, "statement": "; quadrant IV", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": false, "sourceLineKind": "comment", "result": { "status": "ok", "operation": "comment-quadrant-IV", "sourceLineKind": "comment", "executed": false, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 96, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 36, "statement": "M429 ;Identity kinematics", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-identity", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "identity", "code": "M429" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 46, "notes": [] } }, { "stepIndex": 97, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 37, "statement": "g53 g0 x0y0 z# b0 c0", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-machine-reset", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 21, "motionType": "rapid", "feed": 2100, "startJoint": { "x": 10, "y": 0, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": 10, "y": 0, "z": 10 }, "endTcp": { "x": 0, "y": 0, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 47, "notes": [] } }, { "stepIndex": 98, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 38, "statement": "g10l20p0 x0y0 z# b0 c0", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "offset", "result": { "status": "ok", "operation": "set-g54-offset", "sourceLineKind": "offset", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "workOffsetAfter": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "modalChange": { "coordinateSystem": "G54", "code": "G10 L20 P0" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 48, "notes": [] } }, { "stepIndex": 99, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 39, "statement": "g0 x+# y-# z#", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-to-quadrant-center", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 22, "motionType": "rapid", "feed": 2100, "startJoint": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": 20, "y": -20, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": 0, "y": 0, "z": 10 }, "endTcp": { "x": 20, "y": -20, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 49, "notes": [] } }, { "stepIndex": 100, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "statement": "o call [#][#][#][#][#][#][#][#]", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "call", "result": { "status": "ok", "operation": "call-subroutine", "sourceLineKind": "call", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 50, "notes": [] } }, { "stepIndex": 101, "sourceFile": "helix_bc.ngc", "line": 1, "statement": "; helix using switchkins (xyzbc) b,c angles", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": false, "sourceLineKind": "comment", "result": { "status": "ok", "operation": "comment", "sourceLineKind": "comment", "executed": false, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 102, "sourceFile": "helix_bc.ngc", "line": 2, "statement": "osub", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": true, "sourceLineKind": "subroutine-boundary", "result": { "status": "ok", "operation": "subroutine-enter", "sourceLineKind": "subroutine-boundary", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 103, "sourceFile": "helix_bc.ngc", "line": 3, "statement": "# = #1 (=10)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "zmax": 10 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 104, "sourceFile": "helix_bc.ngc", "line": 4, "statement": "# = #2 (= 5)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "zmin": 5 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 105, "sourceFile": "helix_bc.ngc", "line": 5, "statement": "# = #3 (=10)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "r": 10 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 106, "sourceFile": "helix_bc.ngc", "line": 6, "statement": "# = #4 (=1000)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "frate": 1000 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 107, "sourceFile": "helix_bc.ngc", "line": 7, "statement": "# = #5 (=3)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "n": 3 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 108, "sourceFile": "helix_bc.ngc", "line": 8, "statement": "# = #6 (=0 NA)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "a": 0 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 109, "sourceFile": "helix_bc.ngc", "line": 9, "statement": "# = #7 (=45)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "b": 20 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 110, "sourceFile": "helix_bc.ngc", "line": 10, "statement": "# = #8 (=20)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "c": 45 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 111, "sourceFile": "helix_bc.ngc", "line": 12, "statement": "M429 ;Identity kinematics", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-identity", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "identity", "code": "M429" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 51, "notes": [] } }, { "stepIndex": 112, "sourceFile": "helix_bc.ngc", "line": 13, "statement": "g0 x[#<_x> - #] ;adjust for radius", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-radius-adjust", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 23, "motionType": "rapid", "feed": 2100, "startJoint": { "x": 20, "y": -20, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": 10, "y": -20, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": 20, "y": -20, "z": 10 }, "endTcp": { "x": 10, "y": -20, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 52, "notes": [] } }, { "stepIndex": 113, "sourceFile": "helix_bc.ngc", "line": 14, "statement": "g10l20p0 x0y0 z# b0 c0 ;new g54", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": true, "sourceLineKind": "offset", "result": { "status": "ok", "operation": "set-g54-offset", "sourceLineKind": "offset", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "workOffsetAfter": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "modalChange": { "coordinateSystem": "G54", "code": "G10 L20 P0" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 53, "notes": [] } }, { "stepIndex": 114, "sourceFile": "helix_bc.ngc", "line": 15, "statement": "M428 ;XYZBC", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-tcp-xyzbc", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "tcp-xyzbc", "code": "M428" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 54, "notes": [] } }, { "stepIndex": 115, "sourceFile": "helix_bc.ngc", "line": 16, "statement": "g0b#c# ;exercise b,c", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-bc-orient", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 24, "motionType": "rapid", "feed": 2100, "startJoint": { "x": 10, "y": -20, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": 10, "y": -20, "z": 10, "b": 20, "c": 45 }, "startTcp": { "x": 10, "y": -20, "z": 10 }, "endTcp": { "x": 10, "y": -20, "z": 10 }, "endToolAxis": { "i": 0.24184476264797528, "j": 0.24184476264797522, "k": 0.9396926207859084 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 55, "notes": [] } }, { "stepIndex": 116, "sourceFile": "helix_bc.ngc", "line": 17, "statement": "f# g2i#z# p# ;helix", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "feed-helix", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 25, "motionType": "arc", "feed": 1000, "startJoint": { "x": 10, "y": -20, "z": 10, "b": 20, "c": 45 }, "endJoint": { "x": 10, "y": -20, "z": 5, "b": 20, "c": 45 }, "startTcp": { "x": 10, "y": -20, "z": 10 }, "endTcp": { "x": 10, "y": -20, "z": 5 }, "endToolAxis": { "i": 0.24184476264797528, "j": 0.24184476264797522, "k": 0.9396926207859084 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 1000, "actualMmPerMin": 1000, "overridePercent": 100 }, "cutting": { "active": true, "cuttingSpeedMmPerMin": 1000 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 56, "notes": [] } }, { "stepIndex": 117, "sourceFile": "helix_bc.ngc", "line": 18, "statement": "M429 ;Identity kinematics", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-identity", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "identity", "code": "M429" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 1000, "actualMmPerMin": 1000, "overridePercent": 100 }, "cutting": { "active": true, "cuttingSpeedMmPerMin": 1000 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 1000, "actualMmPerMin": 1000, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 57, "notes": [] } }, { "stepIndex": 118, "sourceFile": "helix_bc.ngc", "line": 19, "statement": "g0 x0 y0 z# b0 c0 ;return to start", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-return-to-start", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 26, "motionType": "rapid", "feed": 2100, "startJoint": { "x": 10, "y": -20, "z": 5, "b": 20, "c": 45 }, "endJoint": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": 10, "y": -20, "z": 5 }, "endTcp": { "x": 0, "y": 0, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 1000, "actualMmPerMin": 1000, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 58, "notes": [] } }, { "stepIndex": 119, "sourceFile": "helix_bc.ngc", "line": 20, "statement": "g0 x[#<_x> + #] ;adjust restore", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-radius-restore", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 27, "motionType": "rapid", "feed": 2100, "startJoint": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": 10, "y": 0, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": 0, "y": 0, "z": 10 }, "endTcp": { "x": 10, "y": 0, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 59, "notes": [] } }, { "stepIndex": 120, "sourceFile": "helix_bc.ngc", "line": 21, "statement": "M428 ;XYZBC", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-tcp-xyzbc", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "tcp-xyzbc", "code": "M428" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 60, "notes": [] } }, { "stepIndex": 121, "sourceFile": "helix_bc.ngc", "line": 22, "statement": "oendsub", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": true, "sourceLineKind": "subroutine-boundary", "result": { "status": "ok", "operation": "subroutine-exit", "sourceLineKind": "subroutine-boundary", "executed": true, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 122, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 42, "statement": ";final position", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": false, "sourceLineKind": "comment", "result": { "status": "ok", "operation": "comment-final-position", "sourceLineKind": "comment", "executed": false, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 123, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 43, "statement": "M429 ;Identity kinematics", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-identity", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "identity", "code": "M429" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 61, "notes": [] } }, { "stepIndex": 124, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 44, "statement": "g53 g0 x0y0 z# ;MACHINE coordinates", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-final-machine-reset", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 28, "motionType": "rapid", "feed": 2100, "startJoint": { "x": 10, "y": 0, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": 10, "y": 0, "z": 10 }, "endTcp": { "x": 0, "y": 0, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 62, "notes": [] } }, { "stepIndex": 125, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 45, "statement": "g10l20p0 x0y0 z# ;new g54", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "offset", "result": { "status": "ok", "operation": "set-g54-offset", "sourceLineKind": "offset", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "workOffsetAfter": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "modalChange": { "coordinateSystem": "G54", "code": "G10 L20 P0" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 63, "notes": [] } }, { "stepIndex": 126, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 47, "statement": "oendsub", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "subroutine-boundary", "result": { "status": "ok", "operation": "subroutine-exit", "sourceLineKind": "subroutine-boundary", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 127, "sourceFile": "xyzbc_switchkins.ngc", "line": 3, "statement": "m2", "callDepth": 0, "callStack": [], "executed": true, "sourceLineKind": "program-end", "result": { "status": "ok", "operation": "program-end", "sourceLineKind": "program-end", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "program": "ended", "code": "M2" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } } ], "summary": { "motionStepCount": 29, "switchkinsStepCount": 21, "parameterAssignmentStepCount": 41, "workOffsetStepCount": 9, "callStepCount": 5, "noMotionStepCount": 99, "finalJoint": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "finalKinematics": "identity" }, "semanticBoundary": "complete_gcode_execution_process_expanded_from_linuxcnc_xyzbc_trt_sources" }, "currentVelocity": 0, "operatorMessage": "task/HAL emergency stop active", "pauseButton": { "action": "pause-resume", "paused": "false", "title": "Pause program", "ariaPressed": "false" }, "canvasDataset": { "width": 383, "height": 572, "threeToolAxis": "{\"x\":0,\"y\":0,\"z\":1}", "threeToolGlyphAxis": "{\"x\":0,\"y\":0,\"z\":1}" }, "canvasToolhead": { "x": 0, "y": 0, "z": 0.01 }, "canvasVismachPins": null, "programPaneDataset": { "region": "program", "liveSourceFile": "xyzbc_switchkins_sub.ngc", "liveSourceLine": "16", "liveSampleIndex": "0", "liveExecutedSamples": "1", "gcodeExecutionStatus": "ok", "gcodeExecutionStepCount": "128", "gcodeMotionStepCount": "29", "gcodeParameterStepCount": "41", "gcodeCallDepth": "1" }, "processMonitorDataset": { "linuxcncProcessMonitor": "", "sourceMode": "linuxcnc-task-motion-hal-wasm", "taskHalReady": "true", "activeLine": "1", "liveSourceFile": "xyzbc_switchkins_sub.ngc", "liveSourceLine": "16", "liveSampleIndex": "0" } } }, { "label": "解除 ESTOP", "selector": "[data-action=\"estop\"]", "at": "2026-07-09T17:32:12.323Z", "elapsedMs": 796, "before": { "machineProfile": "xyzbc-trt", "selectedGcodeSourceRel": "configs/sim/axis/vismach/5axis/table-rotary-tilting/demos/xyzbc_switchkins.ngc", "taskHalLoaded": true, "taskHalRuntimeReadiness": { "apiName": "web-rtcp-5axis-linuxcnc-task-hal-runtime-readiness", "loaded": true, "semanticBoundary": "linuxcnc_task_motion_hal_wasm_simulation_runtime", "sdkSemanticBoundary": "linuxcnc_task_motion_hal_wasm_phase4_minimal", "executionContext": "direct", "workerUrl": null, "taskRuntimeReady": true, "motionRuntimeReady": true, "halRuntimeReady": true, "halSyncReady": true, "nativeTaskReady": true, "nativeHalSyncReady": true, "hardwareDrive": false, "hostRealtimeKernel": false, "externalUserMProcessReady": false }, "runState": "stopped", "taskState": "estop", "powerOn": false, "estopActive": true, "allHomed": false, "mode": "manual", "interpState": "idle", "interpResumeState": "idle", "taskPaused": false, "motionPaused": false, "rtcpState": "off", "kinsType": "identity", "activeLine": 16, "programExecutionSourceMode": "linuxcnc-task-motion-hal-wasm", "programExecutionSampleIndex": 0, "programRuntimeFeedback": { "apiName": "web-rtcp-5axis-program-runtime-feedback", "sourceMode": "linuxcnc-task-motion-hal-wasm", "semanticBoundary": "linuxcnc_task_motion_hal_wasm_simulation_runtime", "sampleIndex": 0, "motionIndex": 0, "line": 1, "motionProgramLine": 0, "halProgramLine": 0, "activeLineSource": "fallback", "activeLineHalSynced": false, "type": "TASK_MOTION", "paused": false, "timeSeconds": 0.02, "axisPose": { "x": 0, "y": 0, "z": 0, "a": 0, "b": 0, "c": 0 }, "currentVelocityMmPerMin": 0, "requestedVelocityMmPerMin": 0, "distanceToGo": 0, "dtg": { "x": 0, "y": 0, "z": 0 }, "queueDepth": 0, "activeDepth": 0, "cycle": 20, "taskCycle": 2, "halChangedPinCount": 0 }, "axisPose": { "x": 0, "y": 0, "z": 0, "a": 0, "b": 0, "c": 0 }, "dro": { "x": 0, "y": 0, "z": 0, "a": 0, "b": 0, "c": 0, "tcpX": 0, "tcpY": 0, "tcpZ": 0, "dtgX": 0, "dtgY": 0, "dtgZ": 0 }, "programUiExecution": { "apiName": "web-rtcp-5axis-ui-gcode-live-execution", "status": "estopped", "source": "programAxisPreviewPath.samples", "samplePeriodMs": 50, "sampleIndex": 0, "sampleCount": 1300, "executedSampleCount": 1, "timeMs": 0, "activeProgram": "configs/sim/axis/vismach/5axis/table-rotary-tilting/demos/xyzbc_switchkins.ngc", "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 16, "statement": "g53 g0 x0y0 z# b0 c0 ; quadrant I", "operation": "rapid-machine-reset", "executionIndex": 2, "gcodeStepIndex": 16, "segmentIndex": 0, "motionType": "rapid", "activeKinematics": "identity", "joint": { "x": 0, "y": 0, "z": 0, "a": 0, "b": 0, "c": 0 }, "tcp": { "x": 0, "y": 0, "z": 10 }, "toolAxis": { "i": 0, "j": 0, "k": 1 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "machineState": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "semanticBoundary": "ui_updates_from_real_expanded_linuxcnc_gcode_sample_stream" }, "samplePeriodMs": 50, "sampleCount": 1300, "gcodeExecutionProcess": { "apiName": "linuxcnc-xyzbc-trt-gcode-complete-execution-process", "status": "ok", "program": "xyzbc_switchkins.ngc", "sourceFiles": [ { "sourceFile": "xyzbc_switchkins.ngc", "lineCount": 3 }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "lineCount": 41 }, { "sourceFile": "helix_bc.ngc", "lineCount": 21 } ], "executionStepCount": 128, "sourceLineCoverage": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 1, "statement": "; zmax zmin r frate n a b c dist", "sourceLineKind": "comment", "visitCount": 1, "producedMotionCount": 0, "operations": [ "comment" ] }, { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "statement": "o call [10] [5] [10][1000][3][0][20][45][20]", "sourceLineKind": "call", "visitCount": 1, "producedMotionCount": 0, "operations": [ "call-subroutine" ] }, { "sourceFile": "xyzbc_switchkins.ngc", "line": 3, "statement": "m2", "sourceLineKind": "mcode", "visitCount": 1, "producedMotionCount": 0, "operations": [ "program-end" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 1, "statement": "; ngcgui-compatible subroutine", "sourceLineKind": "comment", "visitCount": 1, "producedMotionCount": 0, "operations": [ "comment" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 2, "statement": "(info: helix in each quadrant at angles B,C)", "sourceLineKind": "comment", "visitCount": 1, "producedMotionCount": 0, "operations": [ "info-comment" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 3, "statement": "osub", "sourceLineKind": "subroutine-boundary", "visitCount": 1, "producedMotionCount": 0, "operations": [ "subroutine-enter" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 4, "statement": "# = #1 (=10)", "sourceLineKind": "assignment", "visitCount": 1, "producedMotionCount": 0, "operations": [ "parameter-assignment" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 5, "statement": "# = #2 (= 5)", "sourceLineKind": "assignment", "visitCount": 1, "producedMotionCount": 0, "operations": [ "parameter-assignment" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 6, "statement": "# = #3 (=10 radius)", "sourceLineKind": "assignment", "visitCount": 1, "producedMotionCount": 0, "operations": [ "parameter-assignment" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 7, "statement": "# = #4 (=1000 feedrate)", "sourceLineKind": "assignment", "visitCount": 1, "producedMotionCount": 0, "operations": [ "parameter-assignment" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 8, "statement": "# = #5 (=3 n circles)", "sourceLineKind": "assignment", "visitCount": 1, "producedMotionCount": 0, "operations": [ "parameter-assignment" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 9, "statement": "# = #6 (=0 A angle NA)", "sourceLineKind": "assignment", "visitCount": 1, "producedMotionCount": 0, "operations": [ "parameter-assignment" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 10, "statement": "# = #7 (=30 B angle)", "sourceLineKind": "assignment", "visitCount": 1, "producedMotionCount": 0, "operations": [ "parameter-assignment" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 11, "statement": "# = #8 (=45 C angle)", "sourceLineKind": "assignment", "visitCount": 1, "producedMotionCount": 0, "operations": [ "parameter-assignment" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 12, "statement": "# = #9 (=20 distance)", "sourceLineKind": "assignment", "visitCount": 1, "producedMotionCount": 0, "operations": [ "parameter-assignment" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 14, "statement": "; quadrant I", "sourceLineKind": "comment", "visitCount": 1, "producedMotionCount": 0, "operations": [ "comment-quadrant-I" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 15, "statement": "M429 ;Identity kinematics", "sourceLineKind": "mcode", "visitCount": 1, "producedMotionCount": 0, "operations": [ "switchkins-identity" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 16, "statement": "g53 g0 x0y0 z# b0 c0 ;MACHINE coordinates", "sourceLineKind": "motion", "visitCount": 1, "producedMotionCount": 1, "operations": [ "rapid-machine-reset" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 17, "statement": "g10l20p0 x0y0 z# b0 c0 ;new g54", "sourceLineKind": "offset", "visitCount": 1, "producedMotionCount": 0, "operations": [ "set-g54-offset" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 18, "statement": "g0 x+# y+# z# ;move to pattern center position", "sourceLineKind": "motion", "visitCount": 1, "producedMotionCount": 1, "operations": [ "rapid-to-quadrant-center" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "statement": "o call [#][#][#][#][#][#][#][#]", "sourceLineKind": "call", "visitCount": 1, "producedMotionCount": 0, "operations": [ "call-subroutine" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 21, "statement": "; quadrant II", "sourceLineKind": "comment", "visitCount": 1, "producedMotionCount": 0, "operations": [ "comment-quadrant-II" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 22, "statement": "M429 ;Identity kinematics", "sourceLineKind": "mcode", "visitCount": 1, "producedMotionCount": 0, "operations": [ "switchkins-identity" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 23, "statement": "g53 g0 x0y0 z# b0 c0", "sourceLineKind": "motion", "visitCount": 1, "producedMotionCount": 1, "operations": [ "rapid-machine-reset" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 24, "statement": "g10l20p0 x0y0 z# b0 c0", "sourceLineKind": "offset", "visitCount": 1, "producedMotionCount": 0, "operations": [ "set-g54-offset" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 25, "statement": "g0 x-# y+# z#", "sourceLineKind": "motion", "visitCount": 1, "producedMotionCount": 1, "operations": [ "rapid-to-quadrant-center" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "statement": "o call [#][#][#][#][#][#][#][#]", "sourceLineKind": "call", "visitCount": 1, "producedMotionCount": 0, "operations": [ "call-subroutine" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 28, "statement": "; quadrant III", "sourceLineKind": "comment", "visitCount": 1, "producedMotionCount": 0, "operations": [ "comment-quadrant-III" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 29, "statement": "M429 ;Identity kinematics", "sourceLineKind": "mcode", "visitCount": 1, "producedMotionCount": 0, "operations": [ "switchkins-identity" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 30, "statement": "g53 g0 x0y0 z# b0 c0", "sourceLineKind": "motion", "visitCount": 1, "producedMotionCount": 1, "operations": [ "rapid-machine-reset" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 31, "statement": "g10l20p0 x0y0 z# b0 c0", "sourceLineKind": "offset", "visitCount": 1, "producedMotionCount": 0, "operations": [ "set-g54-offset" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 32, "statement": "g0 x-# y-# z#", "sourceLineKind": "motion", "visitCount": 1, "producedMotionCount": 1, "operations": [ "rapid-to-quadrant-center" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "statement": "o call [#][#][#][#][#][#][#][#]", "sourceLineKind": "call", "visitCount": 1, "producedMotionCount": 0, "operations": [ "call-subroutine" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 35, "statement": "; quadrant IV", "sourceLineKind": "comment", "visitCount": 1, "producedMotionCount": 0, "operations": [ "comment-quadrant-IV" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 36, "statement": "M429 ;Identity kinematics", "sourceLineKind": "mcode", "visitCount": 1, "producedMotionCount": 0, "operations": [ "switchkins-identity" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 37, "statement": "g53 g0 x0y0 z# b0 c0", "sourceLineKind": "motion", "visitCount": 1, "producedMotionCount": 1, "operations": [ "rapid-machine-reset" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 38, "statement": "g10l20p0 x0y0 z# b0 c0", "sourceLineKind": "offset", "visitCount": 1, "producedMotionCount": 0, "operations": [ "set-g54-offset" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 39, "statement": "g0 x+# y-# z#", "sourceLineKind": "motion", "visitCount": 1, "producedMotionCount": 1, "operations": [ "rapid-to-quadrant-center" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "statement": "o call [#][#][#][#][#][#][#][#]", "sourceLineKind": "call", "visitCount": 1, "producedMotionCount": 0, "operations": [ "call-subroutine" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 42, "statement": ";final position", "sourceLineKind": "comment", "visitCount": 1, "producedMotionCount": 0, "operations": [ "comment-final-position" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 43, "statement": "M429 ;Identity kinematics", "sourceLineKind": "mcode", "visitCount": 1, "producedMotionCount": 0, "operations": [ "switchkins-identity" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 44, "statement": "g53 g0 x0y0 z# ;MACHINE coordinates", "sourceLineKind": "motion", "visitCount": 1, "producedMotionCount": 1, "operations": [ "rapid-final-machine-reset" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 45, "statement": "g10l20p0 x0y0 z# ;new g54", "sourceLineKind": "offset", "visitCount": 1, "producedMotionCount": 0, "operations": [ "set-g54-offset" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 47, "statement": "oendsub", "sourceLineKind": "subroutine-boundary", "visitCount": 1, "producedMotionCount": 0, "operations": [ "subroutine-exit" ] }, { "sourceFile": "helix_bc.ngc", "line": 1, "statement": "; helix using switchkins (xyzbc) b,c angles", "sourceLineKind": "comment", "visitCount": 4, "producedMotionCount": 0, "operations": [ "comment" ] }, { "sourceFile": "helix_bc.ngc", "line": 2, "statement": "osub", "sourceLineKind": "subroutine-boundary", "visitCount": 4, "producedMotionCount": 0, "operations": [ "subroutine-enter" ] }, { "sourceFile": "helix_bc.ngc", "line": 3, "statement": "# = #1 (=10)", "sourceLineKind": "assignment", "visitCount": 4, "producedMotionCount": 0, "operations": [ "parameter-assignment" ] }, { "sourceFile": "helix_bc.ngc", "line": 4, "statement": "# = #2 (= 5)", "sourceLineKind": "assignment", "visitCount": 4, "producedMotionCount": 0, "operations": [ "parameter-assignment" ] }, { "sourceFile": "helix_bc.ngc", "line": 5, "statement": "# = #3 (=10)", "sourceLineKind": "assignment", "visitCount": 4, "producedMotionCount": 0, "operations": [ "parameter-assignment" ] }, { "sourceFile": "helix_bc.ngc", "line": 6, "statement": "# = #4 (=1000)", "sourceLineKind": "assignment", "visitCount": 4, "producedMotionCount": 0, "operations": [ "parameter-assignment" ] }, { "sourceFile": "helix_bc.ngc", "line": 7, "statement": "# = #5 (=3)", "sourceLineKind": "assignment", "visitCount": 4, "producedMotionCount": 0, "operations": [ "parameter-assignment" ] }, { "sourceFile": "helix_bc.ngc", "line": 8, "statement": "# = #6 (=0 NA)", "sourceLineKind": "assignment", "visitCount": 4, "producedMotionCount": 0, "operations": [ "parameter-assignment" ] }, { "sourceFile": "helix_bc.ngc", "line": 9, "statement": "# = #7 (=45)", "sourceLineKind": "assignment", "visitCount": 4, "producedMotionCount": 0, "operations": [ "parameter-assignment" ] }, { "sourceFile": "helix_bc.ngc", "line": 10, "statement": "# = #8 (=20)", "sourceLineKind": "assignment", "visitCount": 4, "producedMotionCount": 0, "operations": [ "parameter-assignment" ] }, { "sourceFile": "helix_bc.ngc", "line": 12, "statement": "M429 ;Identity kinematics", "sourceLineKind": "mcode", "visitCount": 4, "producedMotionCount": 0, "operations": [ "switchkins-identity" ] }, { "sourceFile": "helix_bc.ngc", "line": 13, "statement": "g0 x[#<_x> - #] ;adjust for radius", "sourceLineKind": "motion", "visitCount": 4, "producedMotionCount": 4, "operations": [ "rapid-radius-adjust" ] }, { "sourceFile": "helix_bc.ngc", "line": 14, "statement": "g10l20p0 x0y0 z# b0 c0 ;new g54", "sourceLineKind": "offset", "visitCount": 4, "producedMotionCount": 0, "operations": [ "set-g54-offset" ] }, { "sourceFile": "helix_bc.ngc", "line": 15, "statement": "M428 ;XYZBC", "sourceLineKind": "mcode", "visitCount": 4, "producedMotionCount": 0, "operations": [ "switchkins-tcp-xyzbc" ] }, { "sourceFile": "helix_bc.ngc", "line": 16, "statement": "g0b#c# ;exercise b,c", "sourceLineKind": "motion", "visitCount": 4, "producedMotionCount": 4, "operations": [ "rapid-bc-orient" ] }, { "sourceFile": "helix_bc.ngc", "line": 17, "statement": "f# g2i#z# p# ;helix", "sourceLineKind": "motion", "visitCount": 4, "producedMotionCount": 4, "operations": [ "feed-helix" ] }, { "sourceFile": "helix_bc.ngc", "line": 18, "statement": "M429 ;Identity kinematics", "sourceLineKind": "mcode", "visitCount": 4, "producedMotionCount": 0, "operations": [ "switchkins-identity" ] }, { "sourceFile": "helix_bc.ngc", "line": 19, "statement": "g0 x0 y0 z# b0 c0 ;return to start", "sourceLineKind": "motion", "visitCount": 4, "producedMotionCount": 4, "operations": [ "rapid-return-to-start" ] }, { "sourceFile": "helix_bc.ngc", "line": 20, "statement": "g0 x[#<_x> + #] ;adjust restore", "sourceLineKind": "motion", "visitCount": 4, "producedMotionCount": 4, "operations": [ "rapid-radius-restore" ] }, { "sourceFile": "helix_bc.ngc", "line": 21, "statement": "M428 ;XYZBC", "sourceLineKind": "mcode", "visitCount": 4, "producedMotionCount": 0, "operations": [ "switchkins-tcp-xyzbc" ] }, { "sourceFile": "helix_bc.ngc", "line": 22, "statement": "oendsub", "sourceLineKind": "subroutine-boundary", "visitCount": 4, "producedMotionCount": 0, "operations": [ "subroutine-exit" ] } ], "executionSteps": [ { "stepIndex": 0, "sourceFile": "xyzbc_switchkins.ngc", "line": 1, "statement": "; zmax zmin r frate n a b c dist", "callDepth": 0, "callStack": [], "executed": false, "sourceLineKind": "comment", "result": { "status": "ok", "operation": "comment", "sourceLineKind": "comment", "executed": false, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 1, "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "statement": "o call [10] [5] [10][1000][3][0][20][45][20]", "callDepth": 0, "callStack": [], "executed": true, "sourceLineKind": "call", "result": { "status": "ok", "operation": "call-subroutine", "sourceLineKind": "call", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 0, "notes": [] } }, { "stepIndex": 2, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 1, "statement": "; ngcgui-compatible subroutine", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": false, "sourceLineKind": "comment", "result": { "status": "ok", "operation": "comment", "sourceLineKind": "comment", "executed": false, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 3, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 2, "statement": "(info: helix in each quadrant at angles B,C)", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": false, "sourceLineKind": "comment", "result": { "status": "ok", "operation": "info-comment", "sourceLineKind": "comment", "executed": false, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 4, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 3, "statement": "osub", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "subroutine-boundary", "result": { "status": "ok", "operation": "subroutine-enter", "sourceLineKind": "subroutine-boundary", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 5, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 4, "statement": "# = #1 (=10)", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": {}, "parametersChanged": { "zmax": 10 }, "parametersAfter": { "zmax": 10 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 6, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 5, "statement": "# = #2 (= 5)", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10 }, "parametersChanged": { "zmin": 5 }, "parametersAfter": { "zmax": 10, "zmin": 5 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 7, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 6, "statement": "# = #3 (=10 radius)", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5 }, "parametersChanged": { "r": 10 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 8, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 7, "statement": "# = #4 (=1000 feedrate)", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10 }, "parametersChanged": { "frate": 1000 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 9, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 8, "statement": "# = #5 (=3 n circles)", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000 }, "parametersChanged": { "n": 3 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 10, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 9, "statement": "# = #6 (=0 A angle NA)", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3 }, "parametersChanged": { "a": 0 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 11, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 10, "statement": "# = #7 (=30 B angle)", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0 }, "parametersChanged": { "b": 20 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 12, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 11, "statement": "# = #8 (=45 C angle)", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20 }, "parametersChanged": { "c": 45 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 13, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 12, "statement": "# = #9 (=20 distance)", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45 }, "parametersChanged": { "dist": 20 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 14, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 14, "statement": "; quadrant I", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": false, "sourceLineKind": "comment", "result": { "status": "ok", "operation": "comment-quadrant-I", "sourceLineKind": "comment", "executed": false, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 15, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 15, "statement": "M429 ;Identity kinematics", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-identity", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "identity", "code": "M429" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 1, "notes": [] } }, { "stepIndex": 16, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 16, "statement": "g53 g0 x0y0 z# b0 c0 ;MACHINE coordinates", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-machine-reset", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 0, "motionType": "rapid", "feed": 2100, "startJoint": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": 0, "y": 0, "z": 10 }, "endTcp": { "x": 0, "y": 0, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 2, "notes": [] } }, { "stepIndex": 17, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 17, "statement": "g10l20p0 x0y0 z# b0 c0 ;new g54", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "offset", "result": { "status": "ok", "operation": "set-g54-offset", "sourceLineKind": "offset", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "workOffsetAfter": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "modalChange": { "coordinateSystem": "G54", "code": "G10 L20 P0" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 3, "notes": [] } }, { "stepIndex": 18, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 18, "statement": "g0 x+# y+# z# ;move to pattern center position", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-to-quadrant-center", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 1, "motionType": "rapid", "feed": 2100, "startJoint": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": 20, "y": 20, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": 0, "y": 0, "z": 10 }, "endTcp": { "x": 20, "y": 20, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 4, "notes": [] } }, { "stepIndex": 19, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "statement": "o call [#][#][#][#][#][#][#][#]", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "call", "result": { "status": "ok", "operation": "call-subroutine", "sourceLineKind": "call", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 5, "notes": [] } }, { "stepIndex": 20, "sourceFile": "helix_bc.ngc", "line": 1, "statement": "; helix using switchkins (xyzbc) b,c angles", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": false, "sourceLineKind": "comment", "result": { "status": "ok", "operation": "comment", "sourceLineKind": "comment", "executed": false, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 21, "sourceFile": "helix_bc.ngc", "line": 2, "statement": "osub", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": true, "sourceLineKind": "subroutine-boundary", "result": { "status": "ok", "operation": "subroutine-enter", "sourceLineKind": "subroutine-boundary", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 22, "sourceFile": "helix_bc.ngc", "line": 3, "statement": "# = #1 (=10)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "zmax": 10 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 23, "sourceFile": "helix_bc.ngc", "line": 4, "statement": "# = #2 (= 5)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "zmin": 5 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 24, "sourceFile": "helix_bc.ngc", "line": 5, "statement": "# = #3 (=10)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "r": 10 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 25, "sourceFile": "helix_bc.ngc", "line": 6, "statement": "# = #4 (=1000)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "frate": 1000 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 26, "sourceFile": "helix_bc.ngc", "line": 7, "statement": "# = #5 (=3)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "n": 3 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 27, "sourceFile": "helix_bc.ngc", "line": 8, "statement": "# = #6 (=0 NA)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "a": 0 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 28, "sourceFile": "helix_bc.ngc", "line": 9, "statement": "# = #7 (=45)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "b": 20 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 29, "sourceFile": "helix_bc.ngc", "line": 10, "statement": "# = #8 (=20)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "c": 45 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 30, "sourceFile": "helix_bc.ngc", "line": 12, "statement": "M429 ;Identity kinematics", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-identity", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "identity", "code": "M429" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 6, "notes": [] } }, { "stepIndex": 31, "sourceFile": "helix_bc.ngc", "line": 13, "statement": "g0 x[#<_x> - #] ;adjust for radius", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-radius-adjust", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 2, "motionType": "rapid", "feed": 2100, "startJoint": { "x": 20, "y": 20, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": 10, "y": 20, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": 20, "y": 20, "z": 10 }, "endTcp": { "x": 10, "y": 20, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 7, "notes": [] } }, { "stepIndex": 32, "sourceFile": "helix_bc.ngc", "line": 14, "statement": "g10l20p0 x0y0 z# b0 c0 ;new g54", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": true, "sourceLineKind": "offset", "result": { "status": "ok", "operation": "set-g54-offset", "sourceLineKind": "offset", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "workOffsetAfter": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "modalChange": { "coordinateSystem": "G54", "code": "G10 L20 P0" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 8, "notes": [] } }, { "stepIndex": 33, "sourceFile": "helix_bc.ngc", "line": 15, "statement": "M428 ;XYZBC", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-tcp-xyzbc", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "tcp-xyzbc", "code": "M428" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 9, "notes": [] } }, { "stepIndex": 34, "sourceFile": "helix_bc.ngc", "line": 16, "statement": "g0b#c# ;exercise b,c", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-bc-orient", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 3, "motionType": "rapid", "feed": 2100, "startJoint": { "x": 10, "y": 20, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": 10, "y": 20, "z": 10, "b": 20, "c": 45 }, "startTcp": { "x": 10, "y": 20, "z": 10 }, "endTcp": { "x": 10, "y": 20, "z": 10 }, "endToolAxis": { "i": 0.24184476264797528, "j": 0.24184476264797522, "k": 0.9396926207859084 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 10, "notes": [] } }, { "stepIndex": 35, "sourceFile": "helix_bc.ngc", "line": 17, "statement": "f# g2i#z# p# ;helix", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "feed-helix", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 4, "motionType": "arc", "feed": 1000, "startJoint": { "x": 10, "y": 20, "z": 10, "b": 20, "c": 45 }, "endJoint": { "x": 10, "y": 20, "z": 5, "b": 20, "c": 45 }, "startTcp": { "x": 10, "y": 20, "z": 10 }, "endTcp": { "x": 10, "y": 20, "z": 5 }, "endToolAxis": { "i": 0.24184476264797528, "j": 0.24184476264797522, "k": 0.9396926207859084 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 1000, "actualMmPerMin": 1000, "overridePercent": 100 }, "cutting": { "active": true, "cuttingSpeedMmPerMin": 1000 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 11, "notes": [] } }, { "stepIndex": 36, "sourceFile": "helix_bc.ngc", "line": 18, "statement": "M429 ;Identity kinematics", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-identity", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "identity", "code": "M429" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 1000, "actualMmPerMin": 1000, "overridePercent": 100 }, "cutting": { "active": true, "cuttingSpeedMmPerMin": 1000 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 1000, "actualMmPerMin": 1000, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 12, "notes": [] } }, { "stepIndex": 37, "sourceFile": "helix_bc.ngc", "line": 19, "statement": "g0 x0 y0 z# b0 c0 ;return to start", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-return-to-start", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 5, "motionType": "rapid", "feed": 2100, "startJoint": { "x": 10, "y": 20, "z": 5, "b": 20, "c": 45 }, "endJoint": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": 10, "y": 20, "z": 5 }, "endTcp": { "x": 0, "y": 0, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 1000, "actualMmPerMin": 1000, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 13, "notes": [] } }, { "stepIndex": 38, "sourceFile": "helix_bc.ngc", "line": 20, "statement": "g0 x[#<_x> + #] ;adjust restore", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-radius-restore", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 6, "motionType": "rapid", "feed": 2100, "startJoint": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": 10, "y": 0, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": 0, "y": 0, "z": 10 }, "endTcp": { "x": 10, "y": 0, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 14, "notes": [] } }, { "stepIndex": 39, "sourceFile": "helix_bc.ngc", "line": 21, "statement": "M428 ;XYZBC", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-tcp-xyzbc", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "tcp-xyzbc", "code": "M428" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 15, "notes": [] } }, { "stepIndex": 40, "sourceFile": "helix_bc.ngc", "line": 22, "statement": "oendsub", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": true, "sourceLineKind": "subroutine-boundary", "result": { "status": "ok", "operation": "subroutine-exit", "sourceLineKind": "subroutine-boundary", "executed": true, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 41, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 21, "statement": "; quadrant II", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": false, "sourceLineKind": "comment", "result": { "status": "ok", "operation": "comment-quadrant-II", "sourceLineKind": "comment", "executed": false, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 42, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 22, "statement": "M429 ;Identity kinematics", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-identity", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "identity", "code": "M429" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 16, "notes": [] } }, { "stepIndex": 43, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 23, "statement": "g53 g0 x0y0 z# b0 c0", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-machine-reset", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 7, "motionType": "rapid", "feed": 2100, "startJoint": { "x": 10, "y": 0, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": 10, "y": 0, "z": 10 }, "endTcp": { "x": 0, "y": 0, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 17, "notes": [] } }, { "stepIndex": 44, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 24, "statement": "g10l20p0 x0y0 z# b0 c0", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "offset", "result": { "status": "ok", "operation": "set-g54-offset", "sourceLineKind": "offset", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "workOffsetAfter": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "modalChange": { "coordinateSystem": "G54", "code": "G10 L20 P0" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 18, "notes": [] } }, { "stepIndex": 45, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 25, "statement": "g0 x-# y+# z#", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-to-quadrant-center", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 8, "motionType": "rapid", "feed": 2100, "startJoint": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": -20, "y": 20, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": 0, "y": 0, "z": 10 }, "endTcp": { "x": -20, "y": 20, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 19, "notes": [] } }, { "stepIndex": 46, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "statement": "o call [#][#][#][#][#][#][#][#]", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "call", "result": { "status": "ok", "operation": "call-subroutine", "sourceLineKind": "call", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 20, "notes": [] } }, { "stepIndex": 47, "sourceFile": "helix_bc.ngc", "line": 1, "statement": "; helix using switchkins (xyzbc) b,c angles", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": false, "sourceLineKind": "comment", "result": { "status": "ok", "operation": "comment", "sourceLineKind": "comment", "executed": false, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 48, "sourceFile": "helix_bc.ngc", "line": 2, "statement": "osub", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": true, "sourceLineKind": "subroutine-boundary", "result": { "status": "ok", "operation": "subroutine-enter", "sourceLineKind": "subroutine-boundary", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 49, "sourceFile": "helix_bc.ngc", "line": 3, "statement": "# = #1 (=10)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "zmax": 10 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 50, "sourceFile": "helix_bc.ngc", "line": 4, "statement": "# = #2 (= 5)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "zmin": 5 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 51, "sourceFile": "helix_bc.ngc", "line": 5, "statement": "# = #3 (=10)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "r": 10 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 52, "sourceFile": "helix_bc.ngc", "line": 6, "statement": "# = #4 (=1000)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "frate": 1000 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 53, "sourceFile": "helix_bc.ngc", "line": 7, "statement": "# = #5 (=3)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "n": 3 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 54, "sourceFile": "helix_bc.ngc", "line": 8, "statement": "# = #6 (=0 NA)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "a": 0 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 55, "sourceFile": "helix_bc.ngc", "line": 9, "statement": "# = #7 (=45)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "b": 20 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 56, "sourceFile": "helix_bc.ngc", "line": 10, "statement": "# = #8 (=20)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "c": 45 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 57, "sourceFile": "helix_bc.ngc", "line": 12, "statement": "M429 ;Identity kinematics", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-identity", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "identity", "code": "M429" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 21, "notes": [] } }, { "stepIndex": 58, "sourceFile": "helix_bc.ngc", "line": 13, "statement": "g0 x[#<_x> - #] ;adjust for radius", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-radius-adjust", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 9, "motionType": "rapid", "feed": 2100, "startJoint": { "x": -20, "y": 20, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": -30, "y": 20, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": -20, "y": 20, "z": 10 }, "endTcp": { "x": -30, "y": 20, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 22, "notes": [] } }, { "stepIndex": 59, "sourceFile": "helix_bc.ngc", "line": 14, "statement": "g10l20p0 x0y0 z# b0 c0 ;new g54", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": true, "sourceLineKind": "offset", "result": { "status": "ok", "operation": "set-g54-offset", "sourceLineKind": "offset", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "workOffsetAfter": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "modalChange": { "coordinateSystem": "G54", "code": "G10 L20 P0" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 23, "notes": [] } }, { "stepIndex": 60, "sourceFile": "helix_bc.ngc", "line": 15, "statement": "M428 ;XYZBC", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-tcp-xyzbc", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "tcp-xyzbc", "code": "M428" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 24, "notes": [] } }, { "stepIndex": 61, "sourceFile": "helix_bc.ngc", "line": 16, "statement": "g0b#c# ;exercise b,c", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-bc-orient", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 10, "motionType": "rapid", "feed": 2100, "startJoint": { "x": -30, "y": 20, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": -30, "y": 20, "z": 10, "b": 20, "c": 45 }, "startTcp": { "x": -30, "y": 20, "z": 10 }, "endTcp": { "x": -30, "y": 20, "z": 10 }, "endToolAxis": { "i": 0.24184476264797528, "j": 0.24184476264797522, "k": 0.9396926207859084 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 25, "notes": [] } }, { "stepIndex": 62, "sourceFile": "helix_bc.ngc", "line": 17, "statement": "f# g2i#z# p# ;helix", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "feed-helix", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 11, "motionType": "arc", "feed": 1000, "startJoint": { "x": -30, "y": 20, "z": 10, "b": 20, "c": 45 }, "endJoint": { "x": -30, "y": 20, "z": 5, "b": 20, "c": 45 }, "startTcp": { "x": -30, "y": 20, "z": 10 }, "endTcp": { "x": -30, "y": 20, "z": 5 }, "endToolAxis": { "i": 0.24184476264797528, "j": 0.24184476264797522, "k": 0.9396926207859084 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 1000, "actualMmPerMin": 1000, "overridePercent": 100 }, "cutting": { "active": true, "cuttingSpeedMmPerMin": 1000 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 26, "notes": [] } }, { "stepIndex": 63, "sourceFile": "helix_bc.ngc", "line": 18, "statement": "M429 ;Identity kinematics", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-identity", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "identity", "code": "M429" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 1000, "actualMmPerMin": 1000, "overridePercent": 100 }, "cutting": { "active": true, "cuttingSpeedMmPerMin": 1000 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 1000, "actualMmPerMin": 1000, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 27, "notes": [] } }, { "stepIndex": 64, "sourceFile": "helix_bc.ngc", "line": 19, "statement": "g0 x0 y0 z# b0 c0 ;return to start", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-return-to-start", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 12, "motionType": "rapid", "feed": 2100, "startJoint": { "x": -30, "y": 20, "z": 5, "b": 20, "c": 45 }, "endJoint": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": -30, "y": 20, "z": 5 }, "endTcp": { "x": 0, "y": 0, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 1000, "actualMmPerMin": 1000, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 28, "notes": [] } }, { "stepIndex": 65, "sourceFile": "helix_bc.ngc", "line": 20, "statement": "g0 x[#<_x> + #] ;adjust restore", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-radius-restore", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 13, "motionType": "rapid", "feed": 2100, "startJoint": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": 10, "y": 0, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": 0, "y": 0, "z": 10 }, "endTcp": { "x": 10, "y": 0, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 29, "notes": [] } }, { "stepIndex": 66, "sourceFile": "helix_bc.ngc", "line": 21, "statement": "M428 ;XYZBC", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-tcp-xyzbc", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "tcp-xyzbc", "code": "M428" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 30, "notes": [] } }, { "stepIndex": 67, "sourceFile": "helix_bc.ngc", "line": 22, "statement": "oendsub", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": true, "sourceLineKind": "subroutine-boundary", "result": { "status": "ok", "operation": "subroutine-exit", "sourceLineKind": "subroutine-boundary", "executed": true, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 68, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 28, "statement": "; quadrant III", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": false, "sourceLineKind": "comment", "result": { "status": "ok", "operation": "comment-quadrant-III", "sourceLineKind": "comment", "executed": false, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 69, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 29, "statement": "M429 ;Identity kinematics", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-identity", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "identity", "code": "M429" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 31, "notes": [] } }, { "stepIndex": 70, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 30, "statement": "g53 g0 x0y0 z# b0 c0", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-machine-reset", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 14, "motionType": "rapid", "feed": 2100, "startJoint": { "x": 10, "y": 0, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": 10, "y": 0, "z": 10 }, "endTcp": { "x": 0, "y": 0, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 32, "notes": [] } }, { "stepIndex": 71, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 31, "statement": "g10l20p0 x0y0 z# b0 c0", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "offset", "result": { "status": "ok", "operation": "set-g54-offset", "sourceLineKind": "offset", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "workOffsetAfter": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "modalChange": { "coordinateSystem": "G54", "code": "G10 L20 P0" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 33, "notes": [] } }, { "stepIndex": 72, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 32, "statement": "g0 x-# y-# z#", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-to-quadrant-center", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 15, "motionType": "rapid", "feed": 2100, "startJoint": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": -20, "y": -20, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": 0, "y": 0, "z": 10 }, "endTcp": { "x": -20, "y": -20, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 34, "notes": [] } }, { "stepIndex": 73, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "statement": "o call [#][#][#][#][#][#][#][#]", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "call", "result": { "status": "ok", "operation": "call-subroutine", "sourceLineKind": "call", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 35, "notes": [] } }, { "stepIndex": 74, "sourceFile": "helix_bc.ngc", "line": 1, "statement": "; helix using switchkins (xyzbc) b,c angles", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": false, "sourceLineKind": "comment", "result": { "status": "ok", "operation": "comment", "sourceLineKind": "comment", "executed": false, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 75, "sourceFile": "helix_bc.ngc", "line": 2, "statement": "osub", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": true, "sourceLineKind": "subroutine-boundary", "result": { "status": "ok", "operation": "subroutine-enter", "sourceLineKind": "subroutine-boundary", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 76, "sourceFile": "helix_bc.ngc", "line": 3, "statement": "# = #1 (=10)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "zmax": 10 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 77, "sourceFile": "helix_bc.ngc", "line": 4, "statement": "# = #2 (= 5)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "zmin": 5 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 78, "sourceFile": "helix_bc.ngc", "line": 5, "statement": "# = #3 (=10)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "r": 10 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 79, "sourceFile": "helix_bc.ngc", "line": 6, "statement": "# = #4 (=1000)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "frate": 1000 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 80, "sourceFile": "helix_bc.ngc", "line": 7, "statement": "# = #5 (=3)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "n": 3 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 81, "sourceFile": "helix_bc.ngc", "line": 8, "statement": "# = #6 (=0 NA)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "a": 0 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 82, "sourceFile": "helix_bc.ngc", "line": 9, "statement": "# = #7 (=45)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "b": 20 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 83, "sourceFile": "helix_bc.ngc", "line": 10, "statement": "# = #8 (=20)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "c": 45 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 84, "sourceFile": "helix_bc.ngc", "line": 12, "statement": "M429 ;Identity kinematics", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-identity", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "identity", "code": "M429" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 36, "notes": [] } }, { "stepIndex": 85, "sourceFile": "helix_bc.ngc", "line": 13, "statement": "g0 x[#<_x> - #] ;adjust for radius", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-radius-adjust", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 16, "motionType": "rapid", "feed": 2100, "startJoint": { "x": -20, "y": -20, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": -30, "y": -20, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": -20, "y": -20, "z": 10 }, "endTcp": { "x": -30, "y": -20, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 37, "notes": [] } }, { "stepIndex": 86, "sourceFile": "helix_bc.ngc", "line": 14, "statement": "g10l20p0 x0y0 z# b0 c0 ;new g54", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": true, "sourceLineKind": "offset", "result": { "status": "ok", "operation": "set-g54-offset", "sourceLineKind": "offset", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "workOffsetAfter": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "modalChange": { "coordinateSystem": "G54", "code": "G10 L20 P0" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 38, "notes": [] } }, { "stepIndex": 87, "sourceFile": "helix_bc.ngc", "line": 15, "statement": "M428 ;XYZBC", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-tcp-xyzbc", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "tcp-xyzbc", "code": "M428" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 39, "notes": [] } }, { "stepIndex": 88, "sourceFile": "helix_bc.ngc", "line": 16, "statement": "g0b#c# ;exercise b,c", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-bc-orient", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 17, "motionType": "rapid", "feed": 2100, "startJoint": { "x": -30, "y": -20, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": -30, "y": -20, "z": 10, "b": 20, "c": 45 }, "startTcp": { "x": -30, "y": -20, "z": 10 }, "endTcp": { "x": -30, "y": -20, "z": 10 }, "endToolAxis": { "i": 0.24184476264797528, "j": 0.24184476264797522, "k": 0.9396926207859084 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 40, "notes": [] } }, { "stepIndex": 89, "sourceFile": "helix_bc.ngc", "line": 17, "statement": "f# g2i#z# p# ;helix", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "feed-helix", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 18, "motionType": "arc", "feed": 1000, "startJoint": { "x": -30, "y": -20, "z": 10, "b": 20, "c": 45 }, "endJoint": { "x": -30, "y": -20, "z": 5, "b": 20, "c": 45 }, "startTcp": { "x": -30, "y": -20, "z": 10 }, "endTcp": { "x": -30, "y": -20, "z": 5 }, "endToolAxis": { "i": 0.24184476264797528, "j": 0.24184476264797522, "k": 0.9396926207859084 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 1000, "actualMmPerMin": 1000, "overridePercent": 100 }, "cutting": { "active": true, "cuttingSpeedMmPerMin": 1000 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 41, "notes": [] } }, { "stepIndex": 90, "sourceFile": "helix_bc.ngc", "line": 18, "statement": "M429 ;Identity kinematics", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-identity", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "identity", "code": "M429" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 1000, "actualMmPerMin": 1000, "overridePercent": 100 }, "cutting": { "active": true, "cuttingSpeedMmPerMin": 1000 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 1000, "actualMmPerMin": 1000, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 42, "notes": [] } }, { "stepIndex": 91, "sourceFile": "helix_bc.ngc", "line": 19, "statement": "g0 x0 y0 z# b0 c0 ;return to start", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-return-to-start", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 19, "motionType": "rapid", "feed": 2100, "startJoint": { "x": -30, "y": -20, "z": 5, "b": 20, "c": 45 }, "endJoint": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": -30, "y": -20, "z": 5 }, "endTcp": { "x": 0, "y": 0, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 1000, "actualMmPerMin": 1000, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 43, "notes": [] } }, { "stepIndex": 92, "sourceFile": "helix_bc.ngc", "line": 20, "statement": "g0 x[#<_x> + #] ;adjust restore", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-radius-restore", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 20, "motionType": "rapid", "feed": 2100, "startJoint": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": 10, "y": 0, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": 0, "y": 0, "z": 10 }, "endTcp": { "x": 10, "y": 0, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 44, "notes": [] } }, { "stepIndex": 93, "sourceFile": "helix_bc.ngc", "line": 21, "statement": "M428 ;XYZBC", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-tcp-xyzbc", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "tcp-xyzbc", "code": "M428" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 45, "notes": [] } }, { "stepIndex": 94, "sourceFile": "helix_bc.ngc", "line": 22, "statement": "oendsub", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": true, "sourceLineKind": "subroutine-boundary", "result": { "status": "ok", "operation": "subroutine-exit", "sourceLineKind": "subroutine-boundary", "executed": true, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 95, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 35, "statement": "; quadrant IV", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": false, "sourceLineKind": "comment", "result": { "status": "ok", "operation": "comment-quadrant-IV", "sourceLineKind": "comment", "executed": false, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 96, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 36, "statement": "M429 ;Identity kinematics", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-identity", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "identity", "code": "M429" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 46, "notes": [] } }, { "stepIndex": 97, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 37, "statement": "g53 g0 x0y0 z# b0 c0", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-machine-reset", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 21, "motionType": "rapid", "feed": 2100, "startJoint": { "x": 10, "y": 0, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": 10, "y": 0, "z": 10 }, "endTcp": { "x": 0, "y": 0, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 47, "notes": [] } }, { "stepIndex": 98, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 38, "statement": "g10l20p0 x0y0 z# b0 c0", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "offset", "result": { "status": "ok", "operation": "set-g54-offset", "sourceLineKind": "offset", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "workOffsetAfter": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "modalChange": { "coordinateSystem": "G54", "code": "G10 L20 P0" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 48, "notes": [] } }, { "stepIndex": 99, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 39, "statement": "g0 x+# y-# z#", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-to-quadrant-center", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 22, "motionType": "rapid", "feed": 2100, "startJoint": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": 20, "y": -20, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": 0, "y": 0, "z": 10 }, "endTcp": { "x": 20, "y": -20, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 49, "notes": [] } }, { "stepIndex": 100, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "statement": "o call [#][#][#][#][#][#][#][#]", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "call", "result": { "status": "ok", "operation": "call-subroutine", "sourceLineKind": "call", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 50, "notes": [] } }, { "stepIndex": 101, "sourceFile": "helix_bc.ngc", "line": 1, "statement": "; helix using switchkins (xyzbc) b,c angles", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": false, "sourceLineKind": "comment", "result": { "status": "ok", "operation": "comment", "sourceLineKind": "comment", "executed": false, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 102, "sourceFile": "helix_bc.ngc", "line": 2, "statement": "osub", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": true, "sourceLineKind": "subroutine-boundary", "result": { "status": "ok", "operation": "subroutine-enter", "sourceLineKind": "subroutine-boundary", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 103, "sourceFile": "helix_bc.ngc", "line": 3, "statement": "# = #1 (=10)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "zmax": 10 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 104, "sourceFile": "helix_bc.ngc", "line": 4, "statement": "# = #2 (= 5)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "zmin": 5 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 105, "sourceFile": "helix_bc.ngc", "line": 5, "statement": "# = #3 (=10)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "r": 10 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 106, "sourceFile": "helix_bc.ngc", "line": 6, "statement": "# = #4 (=1000)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "frate": 1000 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 107, "sourceFile": "helix_bc.ngc", "line": 7, "statement": "# = #5 (=3)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "n": 3 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 108, "sourceFile": "helix_bc.ngc", "line": 8, "statement": "# = #6 (=0 NA)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "a": 0 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 109, "sourceFile": "helix_bc.ngc", "line": 9, "statement": "# = #7 (=45)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "b": 20 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 110, "sourceFile": "helix_bc.ngc", "line": 10, "statement": "# = #8 (=20)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "c": 45 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 111, "sourceFile": "helix_bc.ngc", "line": 12, "statement": "M429 ;Identity kinematics", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-identity", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "identity", "code": "M429" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 51, "notes": [] } }, { "stepIndex": 112, "sourceFile": "helix_bc.ngc", "line": 13, "statement": "g0 x[#<_x> - #] ;adjust for radius", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-radius-adjust", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 23, "motionType": "rapid", "feed": 2100, "startJoint": { "x": 20, "y": -20, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": 10, "y": -20, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": 20, "y": -20, "z": 10 }, "endTcp": { "x": 10, "y": -20, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 52, "notes": [] } }, { "stepIndex": 113, "sourceFile": "helix_bc.ngc", "line": 14, "statement": "g10l20p0 x0y0 z# b0 c0 ;new g54", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": true, "sourceLineKind": "offset", "result": { "status": "ok", "operation": "set-g54-offset", "sourceLineKind": "offset", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "workOffsetAfter": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "modalChange": { "coordinateSystem": "G54", "code": "G10 L20 P0" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 53, "notes": [] } }, { "stepIndex": 114, "sourceFile": "helix_bc.ngc", "line": 15, "statement": "M428 ;XYZBC", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-tcp-xyzbc", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "tcp-xyzbc", "code": "M428" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 54, "notes": [] } }, { "stepIndex": 115, "sourceFile": "helix_bc.ngc", "line": 16, "statement": "g0b#c# ;exercise b,c", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-bc-orient", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 24, "motionType": "rapid", "feed": 2100, "startJoint": { "x": 10, "y": -20, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": 10, "y": -20, "z": 10, "b": 20, "c": 45 }, "startTcp": { "x": 10, "y": -20, "z": 10 }, "endTcp": { "x": 10, "y": -20, "z": 10 }, "endToolAxis": { "i": 0.24184476264797528, "j": 0.24184476264797522, "k": 0.9396926207859084 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 55, "notes": [] } }, { "stepIndex": 116, "sourceFile": "helix_bc.ngc", "line": 17, "statement": "f# g2i#z# p# ;helix", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "feed-helix", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 25, "motionType": "arc", "feed": 1000, "startJoint": { "x": 10, "y": -20, "z": 10, "b": 20, "c": 45 }, "endJoint": { "x": 10, "y": -20, "z": 5, "b": 20, "c": 45 }, "startTcp": { "x": 10, "y": -20, "z": 10 }, "endTcp": { "x": 10, "y": -20, "z": 5 }, "endToolAxis": { "i": 0.24184476264797528, "j": 0.24184476264797522, "k": 0.9396926207859084 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 1000, "actualMmPerMin": 1000, "overridePercent": 100 }, "cutting": { "active": true, "cuttingSpeedMmPerMin": 1000 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 56, "notes": [] } }, { "stepIndex": 117, "sourceFile": "helix_bc.ngc", "line": 18, "statement": "M429 ;Identity kinematics", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-identity", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "identity", "code": "M429" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 1000, "actualMmPerMin": 1000, "overridePercent": 100 }, "cutting": { "active": true, "cuttingSpeedMmPerMin": 1000 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 1000, "actualMmPerMin": 1000, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 57, "notes": [] } }, { "stepIndex": 118, "sourceFile": "helix_bc.ngc", "line": 19, "statement": "g0 x0 y0 z# b0 c0 ;return to start", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-return-to-start", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 26, "motionType": "rapid", "feed": 2100, "startJoint": { "x": 10, "y": -20, "z": 5, "b": 20, "c": 45 }, "endJoint": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": 10, "y": -20, "z": 5 }, "endTcp": { "x": 0, "y": 0, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 1000, "actualMmPerMin": 1000, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 58, "notes": [] } }, { "stepIndex": 119, "sourceFile": "helix_bc.ngc", "line": 20, "statement": "g0 x[#<_x> + #] ;adjust restore", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-radius-restore", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 27, "motionType": "rapid", "feed": 2100, "startJoint": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": 10, "y": 0, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": 0, "y": 0, "z": 10 }, "endTcp": { "x": 10, "y": 0, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 59, "notes": [] } }, { "stepIndex": 120, "sourceFile": "helix_bc.ngc", "line": 21, "statement": "M428 ;XYZBC", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-tcp-xyzbc", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "tcp-xyzbc", "code": "M428" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 60, "notes": [] } }, { "stepIndex": 121, "sourceFile": "helix_bc.ngc", "line": 22, "statement": "oendsub", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": true, "sourceLineKind": "subroutine-boundary", "result": { "status": "ok", "operation": "subroutine-exit", "sourceLineKind": "subroutine-boundary", "executed": true, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 122, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 42, "statement": ";final position", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": false, "sourceLineKind": "comment", "result": { "status": "ok", "operation": "comment-final-position", "sourceLineKind": "comment", "executed": false, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 123, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 43, "statement": "M429 ;Identity kinematics", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-identity", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "identity", "code": "M429" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 61, "notes": [] } }, { "stepIndex": 124, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 44, "statement": "g53 g0 x0y0 z# ;MACHINE coordinates", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-final-machine-reset", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 28, "motionType": "rapid", "feed": 2100, "startJoint": { "x": 10, "y": 0, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": 10, "y": 0, "z": 10 }, "endTcp": { "x": 0, "y": 0, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 62, "notes": [] } }, { "stepIndex": 125, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 45, "statement": "g10l20p0 x0y0 z# ;new g54", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "offset", "result": { "status": "ok", "operation": "set-g54-offset", "sourceLineKind": "offset", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "workOffsetAfter": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "modalChange": { "coordinateSystem": "G54", "code": "G10 L20 P0" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 63, "notes": [] } }, { "stepIndex": 126, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 47, "statement": "oendsub", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "subroutine-boundary", "result": { "status": "ok", "operation": "subroutine-exit", "sourceLineKind": "subroutine-boundary", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 127, "sourceFile": "xyzbc_switchkins.ngc", "line": 3, "statement": "m2", "callDepth": 0, "callStack": [], "executed": true, "sourceLineKind": "program-end", "result": { "status": "ok", "operation": "program-end", "sourceLineKind": "program-end", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "program": "ended", "code": "M2" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } } ], "summary": { "motionStepCount": 29, "switchkinsStepCount": 21, "parameterAssignmentStepCount": 41, "workOffsetStepCount": 9, "callStepCount": 5, "noMotionStepCount": 99, "finalJoint": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "finalKinematics": "identity" }, "semanticBoundary": "complete_gcode_execution_process_expanded_from_linuxcnc_xyzbc_trt_sources" }, "currentVelocity": 0, "operatorMessage": "task/HAL emergency stop active", "pauseButton": { "action": "pause-resume", "paused": "false", "title": "Pause program", "ariaPressed": "false" }, "canvasDataset": { "width": 383, "height": 572, "threeToolAxis": "{\"x\":0,\"y\":0,\"z\":1}", "threeToolGlyphAxis": "{\"x\":0,\"y\":0,\"z\":1}" }, "canvasToolhead": { "x": 0, "y": 0, "z": 0.01 }, "canvasVismachPins": null, "programPaneDataset": { "region": "program", "liveSourceFile": "xyzbc_switchkins_sub.ngc", "liveSourceLine": "16", "liveSampleIndex": "0", "liveExecutedSamples": "1", "gcodeExecutionStatus": "ok", "gcodeExecutionStepCount": "128", "gcodeMotionStepCount": "29", "gcodeParameterStepCount": "41", "gcodeCallDepth": "1" }, "processMonitorDataset": { "linuxcncProcessMonitor": "", "sourceMode": "linuxcnc-task-motion-hal-wasm", "taskHalReady": "true", "activeLine": "1", "liveSourceFile": "xyzbc_switchkins_sub.ngc", "liveSourceLine": "16", "liveSampleIndex": "0" } }, "after": { "runState": "stopped", "taskState": "estop-reset", "powerOn": false, "estopActive": false, "allHomed": false, "mode": "manual", "interpState": "idle", "taskPaused": false, "motionPaused": false, "activeLine": 16, "sampleIndex": 0, "programExecutionSourceMode": "linuxcnc-task-motion-hal-wasm", "programUiExecution": { "apiName": "web-rtcp-5axis-ui-gcode-live-execution", "status": "idle", "source": "programAxisPreviewPath.samples", "samplePeriodMs": 50, "sampleIndex": 0, "sampleCount": 1300, "executedSampleCount": 1, "timeMs": 0, "activeProgram": "configs/sim/axis/vismach/5axis/table-rotary-tilting/demos/xyzbc_switchkins.ngc", "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 16, "statement": "g53 g0 x0y0 z# b0 c0 ; quadrant I", "operation": "rapid-machine-reset", "executionIndex": 2, "gcodeStepIndex": 16, "segmentIndex": 0, "motionType": "rapid", "activeKinematics": "identity", "joint": { "x": 0, "y": 0, "z": 0, "a": 0, "b": 0, "c": 0 }, "tcp": { "x": 0, "y": 0, "z": 10 }, "toolAxis": { "i": 0, "j": 0, "k": 1 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "machineState": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "semanticBoundary": "ui_updates_from_real_expanded_linuxcnc_gcode_sample_stream" }, "currentVelocity": 0, "operatorMessage": "task/HAL estop reset; machine off" } }, { "label": "上电", "selector": "[data-action=\"power\"]", "at": "2026-07-09T17:32:13.094Z", "elapsedMs": 695, "before": { "machineProfile": "xyzbc-trt", "selectedGcodeSourceRel": "configs/sim/axis/vismach/5axis/table-rotary-tilting/demos/xyzbc_switchkins.ngc", "taskHalLoaded": true, "taskHalRuntimeReadiness": { "apiName": "web-rtcp-5axis-linuxcnc-task-hal-runtime-readiness", "loaded": true, "semanticBoundary": "linuxcnc_task_motion_hal_wasm_simulation_runtime", "sdkSemanticBoundary": "linuxcnc_task_motion_hal_wasm_phase4_minimal", "executionContext": "direct", "workerUrl": null, "taskRuntimeReady": true, "motionRuntimeReady": true, "halRuntimeReady": true, "halSyncReady": true, "nativeTaskReady": true, "nativeHalSyncReady": true, "hardwareDrive": false, "hostRealtimeKernel": false, "externalUserMProcessReady": false }, "runState": "stopped", "taskState": "estop-reset", "powerOn": false, "estopActive": false, "allHomed": false, "mode": "manual", "interpState": "idle", "interpResumeState": "idle", "taskPaused": false, "motionPaused": false, "rtcpState": "off", "kinsType": "identity", "activeLine": 16, "programExecutionSourceMode": "linuxcnc-task-motion-hal-wasm", "programExecutionSampleIndex": 0, "programRuntimeFeedback": { "apiName": "web-rtcp-5axis-program-runtime-feedback", "sourceMode": "linuxcnc-task-motion-hal-wasm", "semanticBoundary": "linuxcnc_task_motion_hal_wasm_simulation_runtime", "sampleIndex": 0, "motionIndex": 0, "line": 1, "motionProgramLine": 0, "halProgramLine": 0, "activeLineSource": "fallback", "activeLineHalSynced": false, "type": "TASK_MOTION", "paused": false, "timeSeconds": 0.03, "axisPose": { "x": 0, "y": 0, "z": 0, "a": 0, "b": 0, "c": 0 }, "currentVelocityMmPerMin": 0, "requestedVelocityMmPerMin": 0, "distanceToGo": 0, "dtg": { "x": 0, "y": 0, "z": 0 }, "queueDepth": 0, "activeDepth": 0, "cycle": 30, "taskCycle": 3, "halChangedPinCount": 0 }, "axisPose": { "x": 0, "y": 0, "z": 0, "a": 0, "b": 0, "c": 0 }, "dro": { "x": 0, "y": 0, "z": 0, "a": 0, "b": 0, "c": 0, "tcpX": 0, "tcpY": 0, "tcpZ": 0, "dtgX": 0, "dtgY": 0, "dtgZ": 0 }, "programUiExecution": { "apiName": "web-rtcp-5axis-ui-gcode-live-execution", "status": "idle", "source": "programAxisPreviewPath.samples", "samplePeriodMs": 50, "sampleIndex": 0, "sampleCount": 1300, "executedSampleCount": 1, "timeMs": 0, "activeProgram": "configs/sim/axis/vismach/5axis/table-rotary-tilting/demos/xyzbc_switchkins.ngc", "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 16, "statement": "g53 g0 x0y0 z# b0 c0 ; quadrant I", "operation": "rapid-machine-reset", "executionIndex": 2, "gcodeStepIndex": 16, "segmentIndex": 0, "motionType": "rapid", "activeKinematics": "identity", "joint": { "x": 0, "y": 0, "z": 0, "a": 0, "b": 0, "c": 0 }, "tcp": { "x": 0, "y": 0, "z": 10 }, "toolAxis": { "i": 0, "j": 0, "k": 1 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "machineState": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "semanticBoundary": "ui_updates_from_real_expanded_linuxcnc_gcode_sample_stream" }, "samplePeriodMs": 50, "sampleCount": 1300, "gcodeExecutionProcess": { "apiName": "linuxcnc-xyzbc-trt-gcode-complete-execution-process", "status": "ok", "program": "xyzbc_switchkins.ngc", "sourceFiles": [ { "sourceFile": "xyzbc_switchkins.ngc", "lineCount": 3 }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "lineCount": 41 }, { "sourceFile": "helix_bc.ngc", "lineCount": 21 } ], "executionStepCount": 128, "sourceLineCoverage": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 1, "statement": "; zmax zmin r frate n a b c dist", "sourceLineKind": "comment", "visitCount": 1, "producedMotionCount": 0, "operations": [ "comment" ] }, { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "statement": "o call [10] [5] [10][1000][3][0][20][45][20]", "sourceLineKind": "call", "visitCount": 1, "producedMotionCount": 0, "operations": [ "call-subroutine" ] }, { "sourceFile": "xyzbc_switchkins.ngc", "line": 3, "statement": "m2", "sourceLineKind": "mcode", "visitCount": 1, "producedMotionCount": 0, "operations": [ "program-end" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 1, "statement": "; ngcgui-compatible subroutine", "sourceLineKind": "comment", "visitCount": 1, "producedMotionCount": 0, "operations": [ "comment" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 2, "statement": "(info: helix in each quadrant at angles B,C)", "sourceLineKind": "comment", "visitCount": 1, "producedMotionCount": 0, "operations": [ "info-comment" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 3, "statement": "osub", "sourceLineKind": "subroutine-boundary", "visitCount": 1, "producedMotionCount": 0, "operations": [ "subroutine-enter" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 4, "statement": "# = #1 (=10)", "sourceLineKind": "assignment", "visitCount": 1, "producedMotionCount": 0, "operations": [ "parameter-assignment" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 5, "statement": "# = #2 (= 5)", "sourceLineKind": "assignment", "visitCount": 1, "producedMotionCount": 0, "operations": [ "parameter-assignment" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 6, "statement": "# = #3 (=10 radius)", "sourceLineKind": "assignment", "visitCount": 1, "producedMotionCount": 0, "operations": [ "parameter-assignment" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 7, "statement": "# = #4 (=1000 feedrate)", "sourceLineKind": "assignment", "visitCount": 1, "producedMotionCount": 0, "operations": [ "parameter-assignment" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 8, "statement": "# = #5 (=3 n circles)", "sourceLineKind": "assignment", "visitCount": 1, "producedMotionCount": 0, "operations": [ "parameter-assignment" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 9, "statement": "# = #6 (=0 A angle NA)", "sourceLineKind": "assignment", "visitCount": 1, "producedMotionCount": 0, "operations": [ "parameter-assignment" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 10, "statement": "# = #7 (=30 B angle)", "sourceLineKind": "assignment", "visitCount": 1, "producedMotionCount": 0, "operations": [ "parameter-assignment" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 11, "statement": "# = #8 (=45 C angle)", "sourceLineKind": "assignment", "visitCount": 1, "producedMotionCount": 0, "operations": [ "parameter-assignment" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 12, "statement": "# = #9 (=20 distance)", "sourceLineKind": "assignment", "visitCount": 1, "producedMotionCount": 0, "operations": [ "parameter-assignment" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 14, "statement": "; quadrant I", "sourceLineKind": "comment", "visitCount": 1, "producedMotionCount": 0, "operations": [ "comment-quadrant-I" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 15, "statement": "M429 ;Identity kinematics", "sourceLineKind": "mcode", "visitCount": 1, "producedMotionCount": 0, "operations": [ "switchkins-identity" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 16, "statement": "g53 g0 x0y0 z# b0 c0 ;MACHINE coordinates", "sourceLineKind": "motion", "visitCount": 1, "producedMotionCount": 1, "operations": [ "rapid-machine-reset" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 17, "statement": "g10l20p0 x0y0 z# b0 c0 ;new g54", "sourceLineKind": "offset", "visitCount": 1, "producedMotionCount": 0, "operations": [ "set-g54-offset" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 18, "statement": "g0 x+# y+# z# ;move to pattern center position", "sourceLineKind": "motion", "visitCount": 1, "producedMotionCount": 1, "operations": [ "rapid-to-quadrant-center" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "statement": "o call [#][#][#][#][#][#][#][#]", "sourceLineKind": "call", "visitCount": 1, "producedMotionCount": 0, "operations": [ "call-subroutine" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 21, "statement": "; quadrant II", "sourceLineKind": "comment", "visitCount": 1, "producedMotionCount": 0, "operations": [ "comment-quadrant-II" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 22, "statement": "M429 ;Identity kinematics", "sourceLineKind": "mcode", "visitCount": 1, "producedMotionCount": 0, "operations": [ "switchkins-identity" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 23, "statement": "g53 g0 x0y0 z# b0 c0", "sourceLineKind": "motion", "visitCount": 1, "producedMotionCount": 1, "operations": [ "rapid-machine-reset" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 24, "statement": "g10l20p0 x0y0 z# b0 c0", "sourceLineKind": "offset", "visitCount": 1, "producedMotionCount": 0, "operations": [ "set-g54-offset" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 25, "statement": "g0 x-# y+# z#", "sourceLineKind": "motion", "visitCount": 1, "producedMotionCount": 1, "operations": [ "rapid-to-quadrant-center" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "statement": "o call [#][#][#][#][#][#][#][#]", "sourceLineKind": "call", "visitCount": 1, "producedMotionCount": 0, "operations": [ "call-subroutine" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 28, "statement": "; quadrant III", "sourceLineKind": "comment", "visitCount": 1, "producedMotionCount": 0, "operations": [ "comment-quadrant-III" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 29, "statement": "M429 ;Identity kinematics", "sourceLineKind": "mcode", "visitCount": 1, "producedMotionCount": 0, "operations": [ "switchkins-identity" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 30, "statement": "g53 g0 x0y0 z# b0 c0", "sourceLineKind": "motion", "visitCount": 1, "producedMotionCount": 1, "operations": [ "rapid-machine-reset" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 31, "statement": "g10l20p0 x0y0 z# b0 c0", "sourceLineKind": "offset", "visitCount": 1, "producedMotionCount": 0, "operations": [ "set-g54-offset" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 32, "statement": "g0 x-# y-# z#", "sourceLineKind": "motion", "visitCount": 1, "producedMotionCount": 1, "operations": [ "rapid-to-quadrant-center" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "statement": "o call [#][#][#][#][#][#][#][#]", "sourceLineKind": "call", "visitCount": 1, "producedMotionCount": 0, "operations": [ "call-subroutine" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 35, "statement": "; quadrant IV", "sourceLineKind": "comment", "visitCount": 1, "producedMotionCount": 0, "operations": [ "comment-quadrant-IV" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 36, "statement": "M429 ;Identity kinematics", "sourceLineKind": "mcode", "visitCount": 1, "producedMotionCount": 0, "operations": [ "switchkins-identity" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 37, "statement": "g53 g0 x0y0 z# b0 c0", "sourceLineKind": "motion", "visitCount": 1, "producedMotionCount": 1, "operations": [ "rapid-machine-reset" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 38, "statement": "g10l20p0 x0y0 z# b0 c0", "sourceLineKind": "offset", "visitCount": 1, "producedMotionCount": 0, "operations": [ "set-g54-offset" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 39, "statement": "g0 x+# y-# z#", "sourceLineKind": "motion", "visitCount": 1, "producedMotionCount": 1, "operations": [ "rapid-to-quadrant-center" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "statement": "o call [#][#][#][#][#][#][#][#]", "sourceLineKind": "call", "visitCount": 1, "producedMotionCount": 0, "operations": [ "call-subroutine" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 42, "statement": ";final position", "sourceLineKind": "comment", "visitCount": 1, "producedMotionCount": 0, "operations": [ "comment-final-position" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 43, "statement": "M429 ;Identity kinematics", "sourceLineKind": "mcode", "visitCount": 1, "producedMotionCount": 0, "operations": [ "switchkins-identity" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 44, "statement": "g53 g0 x0y0 z# ;MACHINE coordinates", "sourceLineKind": "motion", "visitCount": 1, "producedMotionCount": 1, "operations": [ "rapid-final-machine-reset" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 45, "statement": "g10l20p0 x0y0 z# ;new g54", "sourceLineKind": "offset", "visitCount": 1, "producedMotionCount": 0, "operations": [ "set-g54-offset" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 47, "statement": "oendsub", "sourceLineKind": "subroutine-boundary", "visitCount": 1, "producedMotionCount": 0, "operations": [ "subroutine-exit" ] }, { "sourceFile": "helix_bc.ngc", "line": 1, "statement": "; helix using switchkins (xyzbc) b,c angles", "sourceLineKind": "comment", "visitCount": 4, "producedMotionCount": 0, "operations": [ "comment" ] }, { "sourceFile": "helix_bc.ngc", "line": 2, "statement": "osub", "sourceLineKind": "subroutine-boundary", "visitCount": 4, "producedMotionCount": 0, "operations": [ "subroutine-enter" ] }, { "sourceFile": "helix_bc.ngc", "line": 3, "statement": "# = #1 (=10)", "sourceLineKind": "assignment", "visitCount": 4, "producedMotionCount": 0, "operations": [ "parameter-assignment" ] }, { "sourceFile": "helix_bc.ngc", "line": 4, "statement": "# = #2 (= 5)", "sourceLineKind": "assignment", "visitCount": 4, "producedMotionCount": 0, "operations": [ "parameter-assignment" ] }, { "sourceFile": "helix_bc.ngc", "line": 5, "statement": "# = #3 (=10)", "sourceLineKind": "assignment", "visitCount": 4, "producedMotionCount": 0, "operations": [ "parameter-assignment" ] }, { "sourceFile": "helix_bc.ngc", "line": 6, "statement": "# = #4 (=1000)", "sourceLineKind": "assignment", "visitCount": 4, "producedMotionCount": 0, "operations": [ "parameter-assignment" ] }, { "sourceFile": "helix_bc.ngc", "line": 7, "statement": "# = #5 (=3)", "sourceLineKind": "assignment", "visitCount": 4, "producedMotionCount": 0, "operations": [ "parameter-assignment" ] }, { "sourceFile": "helix_bc.ngc", "line": 8, "statement": "# = #6 (=0 NA)", "sourceLineKind": "assignment", "visitCount": 4, "producedMotionCount": 0, "operations": [ "parameter-assignment" ] }, { "sourceFile": "helix_bc.ngc", "line": 9, "statement": "# = #7 (=45)", "sourceLineKind": "assignment", "visitCount": 4, "producedMotionCount": 0, "operations": [ "parameter-assignment" ] }, { "sourceFile": "helix_bc.ngc", "line": 10, "statement": "# = #8 (=20)", "sourceLineKind": "assignment", "visitCount": 4, "producedMotionCount": 0, "operations": [ "parameter-assignment" ] }, { "sourceFile": "helix_bc.ngc", "line": 12, "statement": "M429 ;Identity kinematics", "sourceLineKind": "mcode", "visitCount": 4, "producedMotionCount": 0, "operations": [ "switchkins-identity" ] }, { "sourceFile": "helix_bc.ngc", "line": 13, "statement": "g0 x[#<_x> - #] ;adjust for radius", "sourceLineKind": "motion", "visitCount": 4, "producedMotionCount": 4, "operations": [ "rapid-radius-adjust" ] }, { "sourceFile": "helix_bc.ngc", "line": 14, "statement": "g10l20p0 x0y0 z# b0 c0 ;new g54", "sourceLineKind": "offset", "visitCount": 4, "producedMotionCount": 0, "operations": [ "set-g54-offset" ] }, { "sourceFile": "helix_bc.ngc", "line": 15, "statement": "M428 ;XYZBC", "sourceLineKind": "mcode", "visitCount": 4, "producedMotionCount": 0, "operations": [ "switchkins-tcp-xyzbc" ] }, { "sourceFile": "helix_bc.ngc", "line": 16, "statement": "g0b#c# ;exercise b,c", "sourceLineKind": "motion", "visitCount": 4, "producedMotionCount": 4, "operations": [ "rapid-bc-orient" ] }, { "sourceFile": "helix_bc.ngc", "line": 17, "statement": "f# g2i#z# p# ;helix", "sourceLineKind": "motion", "visitCount": 4, "producedMotionCount": 4, "operations": [ "feed-helix" ] }, { "sourceFile": "helix_bc.ngc", "line": 18, "statement": "M429 ;Identity kinematics", "sourceLineKind": "mcode", "visitCount": 4, "producedMotionCount": 0, "operations": [ "switchkins-identity" ] }, { "sourceFile": "helix_bc.ngc", "line": 19, "statement": "g0 x0 y0 z# b0 c0 ;return to start", "sourceLineKind": "motion", "visitCount": 4, "producedMotionCount": 4, "operations": [ "rapid-return-to-start" ] }, { "sourceFile": "helix_bc.ngc", "line": 20, "statement": "g0 x[#<_x> + #] ;adjust restore", "sourceLineKind": "motion", "visitCount": 4, "producedMotionCount": 4, "operations": [ "rapid-radius-restore" ] }, { "sourceFile": "helix_bc.ngc", "line": 21, "statement": "M428 ;XYZBC", "sourceLineKind": "mcode", "visitCount": 4, "producedMotionCount": 0, "operations": [ "switchkins-tcp-xyzbc" ] }, { "sourceFile": "helix_bc.ngc", "line": 22, "statement": "oendsub", "sourceLineKind": "subroutine-boundary", "visitCount": 4, "producedMotionCount": 0, "operations": [ "subroutine-exit" ] } ], "executionSteps": [ { "stepIndex": 0, "sourceFile": "xyzbc_switchkins.ngc", "line": 1, "statement": "; zmax zmin r frate n a b c dist", "callDepth": 0, "callStack": [], "executed": false, "sourceLineKind": "comment", "result": { "status": "ok", "operation": "comment", "sourceLineKind": "comment", "executed": false, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 1, "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "statement": "o call [10] [5] [10][1000][3][0][20][45][20]", "callDepth": 0, "callStack": [], "executed": true, "sourceLineKind": "call", "result": { "status": "ok", "operation": "call-subroutine", "sourceLineKind": "call", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 0, "notes": [] } }, { "stepIndex": 2, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 1, "statement": "; ngcgui-compatible subroutine", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": false, "sourceLineKind": "comment", "result": { "status": "ok", "operation": "comment", "sourceLineKind": "comment", "executed": false, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 3, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 2, "statement": "(info: helix in each quadrant at angles B,C)", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": false, "sourceLineKind": "comment", "result": { "status": "ok", "operation": "info-comment", "sourceLineKind": "comment", "executed": false, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 4, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 3, "statement": "osub", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "subroutine-boundary", "result": { "status": "ok", "operation": "subroutine-enter", "sourceLineKind": "subroutine-boundary", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 5, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 4, "statement": "# = #1 (=10)", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": {}, "parametersChanged": { "zmax": 10 }, "parametersAfter": { "zmax": 10 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 6, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 5, "statement": "# = #2 (= 5)", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10 }, "parametersChanged": { "zmin": 5 }, "parametersAfter": { "zmax": 10, "zmin": 5 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 7, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 6, "statement": "# = #3 (=10 radius)", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5 }, "parametersChanged": { "r": 10 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 8, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 7, "statement": "# = #4 (=1000 feedrate)", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10 }, "parametersChanged": { "frate": 1000 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 9, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 8, "statement": "# = #5 (=3 n circles)", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000 }, "parametersChanged": { "n": 3 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 10, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 9, "statement": "# = #6 (=0 A angle NA)", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3 }, "parametersChanged": { "a": 0 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 11, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 10, "statement": "# = #7 (=30 B angle)", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0 }, "parametersChanged": { "b": 20 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 12, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 11, "statement": "# = #8 (=45 C angle)", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20 }, "parametersChanged": { "c": 45 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 13, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 12, "statement": "# = #9 (=20 distance)", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45 }, "parametersChanged": { "dist": 20 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 14, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 14, "statement": "; quadrant I", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": false, "sourceLineKind": "comment", "result": { "status": "ok", "operation": "comment-quadrant-I", "sourceLineKind": "comment", "executed": false, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 15, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 15, "statement": "M429 ;Identity kinematics", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-identity", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "identity", "code": "M429" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 1, "notes": [] } }, { "stepIndex": 16, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 16, "statement": "g53 g0 x0y0 z# b0 c0 ;MACHINE coordinates", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-machine-reset", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 0, "motionType": "rapid", "feed": 2100, "startJoint": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": 0, "y": 0, "z": 10 }, "endTcp": { "x": 0, "y": 0, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 2, "notes": [] } }, { "stepIndex": 17, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 17, "statement": "g10l20p0 x0y0 z# b0 c0 ;new g54", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "offset", "result": { "status": "ok", "operation": "set-g54-offset", "sourceLineKind": "offset", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "workOffsetAfter": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "modalChange": { "coordinateSystem": "G54", "code": "G10 L20 P0" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 3, "notes": [] } }, { "stepIndex": 18, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 18, "statement": "g0 x+# y+# z# ;move to pattern center position", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-to-quadrant-center", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 1, "motionType": "rapid", "feed": 2100, "startJoint": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": 20, "y": 20, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": 0, "y": 0, "z": 10 }, "endTcp": { "x": 20, "y": 20, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 4, "notes": [] } }, { "stepIndex": 19, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "statement": "o call [#][#][#][#][#][#][#][#]", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "call", "result": { "status": "ok", "operation": "call-subroutine", "sourceLineKind": "call", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 5, "notes": [] } }, { "stepIndex": 20, "sourceFile": "helix_bc.ngc", "line": 1, "statement": "; helix using switchkins (xyzbc) b,c angles", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": false, "sourceLineKind": "comment", "result": { "status": "ok", "operation": "comment", "sourceLineKind": "comment", "executed": false, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 21, "sourceFile": "helix_bc.ngc", "line": 2, "statement": "osub", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": true, "sourceLineKind": "subroutine-boundary", "result": { "status": "ok", "operation": "subroutine-enter", "sourceLineKind": "subroutine-boundary", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 22, "sourceFile": "helix_bc.ngc", "line": 3, "statement": "# = #1 (=10)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "zmax": 10 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 23, "sourceFile": "helix_bc.ngc", "line": 4, "statement": "# = #2 (= 5)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "zmin": 5 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 24, "sourceFile": "helix_bc.ngc", "line": 5, "statement": "# = #3 (=10)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "r": 10 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 25, "sourceFile": "helix_bc.ngc", "line": 6, "statement": "# = #4 (=1000)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "frate": 1000 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 26, "sourceFile": "helix_bc.ngc", "line": 7, "statement": "# = #5 (=3)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "n": 3 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 27, "sourceFile": "helix_bc.ngc", "line": 8, "statement": "# = #6 (=0 NA)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "a": 0 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 28, "sourceFile": "helix_bc.ngc", "line": 9, "statement": "# = #7 (=45)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "b": 20 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 29, "sourceFile": "helix_bc.ngc", "line": 10, "statement": "# = #8 (=20)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "c": 45 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 30, "sourceFile": "helix_bc.ngc", "line": 12, "statement": "M429 ;Identity kinematics", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-identity", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "identity", "code": "M429" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 6, "notes": [] } }, { "stepIndex": 31, "sourceFile": "helix_bc.ngc", "line": 13, "statement": "g0 x[#<_x> - #] ;adjust for radius", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-radius-adjust", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 2, "motionType": "rapid", "feed": 2100, "startJoint": { "x": 20, "y": 20, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": 10, "y": 20, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": 20, "y": 20, "z": 10 }, "endTcp": { "x": 10, "y": 20, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 7, "notes": [] } }, { "stepIndex": 32, "sourceFile": "helix_bc.ngc", "line": 14, "statement": "g10l20p0 x0y0 z# b0 c0 ;new g54", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": true, "sourceLineKind": "offset", "result": { "status": "ok", "operation": "set-g54-offset", "sourceLineKind": "offset", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "workOffsetAfter": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "modalChange": { "coordinateSystem": "G54", "code": "G10 L20 P0" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 8, "notes": [] } }, { "stepIndex": 33, "sourceFile": "helix_bc.ngc", "line": 15, "statement": "M428 ;XYZBC", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-tcp-xyzbc", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "tcp-xyzbc", "code": "M428" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 9, "notes": [] } }, { "stepIndex": 34, "sourceFile": "helix_bc.ngc", "line": 16, "statement": "g0b#c# ;exercise b,c", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-bc-orient", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 3, "motionType": "rapid", "feed": 2100, "startJoint": { "x": 10, "y": 20, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": 10, "y": 20, "z": 10, "b": 20, "c": 45 }, "startTcp": { "x": 10, "y": 20, "z": 10 }, "endTcp": { "x": 10, "y": 20, "z": 10 }, "endToolAxis": { "i": 0.24184476264797528, "j": 0.24184476264797522, "k": 0.9396926207859084 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 10, "notes": [] } }, { "stepIndex": 35, "sourceFile": "helix_bc.ngc", "line": 17, "statement": "f# g2i#z# p# ;helix", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "feed-helix", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 4, "motionType": "arc", "feed": 1000, "startJoint": { "x": 10, "y": 20, "z": 10, "b": 20, "c": 45 }, "endJoint": { "x": 10, "y": 20, "z": 5, "b": 20, "c": 45 }, "startTcp": { "x": 10, "y": 20, "z": 10 }, "endTcp": { "x": 10, "y": 20, "z": 5 }, "endToolAxis": { "i": 0.24184476264797528, "j": 0.24184476264797522, "k": 0.9396926207859084 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 1000, "actualMmPerMin": 1000, "overridePercent": 100 }, "cutting": { "active": true, "cuttingSpeedMmPerMin": 1000 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 11, "notes": [] } }, { "stepIndex": 36, "sourceFile": "helix_bc.ngc", "line": 18, "statement": "M429 ;Identity kinematics", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-identity", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "identity", "code": "M429" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 1000, "actualMmPerMin": 1000, "overridePercent": 100 }, "cutting": { "active": true, "cuttingSpeedMmPerMin": 1000 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 1000, "actualMmPerMin": 1000, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 12, "notes": [] } }, { "stepIndex": 37, "sourceFile": "helix_bc.ngc", "line": 19, "statement": "g0 x0 y0 z# b0 c0 ;return to start", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-return-to-start", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 5, "motionType": "rapid", "feed": 2100, "startJoint": { "x": 10, "y": 20, "z": 5, "b": 20, "c": 45 }, "endJoint": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": 10, "y": 20, "z": 5 }, "endTcp": { "x": 0, "y": 0, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 1000, "actualMmPerMin": 1000, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 13, "notes": [] } }, { "stepIndex": 38, "sourceFile": "helix_bc.ngc", "line": 20, "statement": "g0 x[#<_x> + #] ;adjust restore", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-radius-restore", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 6, "motionType": "rapid", "feed": 2100, "startJoint": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": 10, "y": 0, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": 0, "y": 0, "z": 10 }, "endTcp": { "x": 10, "y": 0, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 14, "notes": [] } }, { "stepIndex": 39, "sourceFile": "helix_bc.ngc", "line": 21, "statement": "M428 ;XYZBC", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-tcp-xyzbc", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "tcp-xyzbc", "code": "M428" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 15, "notes": [] } }, { "stepIndex": 40, "sourceFile": "helix_bc.ngc", "line": 22, "statement": "oendsub", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": true, "sourceLineKind": "subroutine-boundary", "result": { "status": "ok", "operation": "subroutine-exit", "sourceLineKind": "subroutine-boundary", "executed": true, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 41, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 21, "statement": "; quadrant II", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": false, "sourceLineKind": "comment", "result": { "status": "ok", "operation": "comment-quadrant-II", "sourceLineKind": "comment", "executed": false, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 42, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 22, "statement": "M429 ;Identity kinematics", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-identity", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "identity", "code": "M429" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 16, "notes": [] } }, { "stepIndex": 43, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 23, "statement": "g53 g0 x0y0 z# b0 c0", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-machine-reset", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 7, "motionType": "rapid", "feed": 2100, "startJoint": { "x": 10, "y": 0, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": 10, "y": 0, "z": 10 }, "endTcp": { "x": 0, "y": 0, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 17, "notes": [] } }, { "stepIndex": 44, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 24, "statement": "g10l20p0 x0y0 z# b0 c0", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "offset", "result": { "status": "ok", "operation": "set-g54-offset", "sourceLineKind": "offset", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "workOffsetAfter": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "modalChange": { "coordinateSystem": "G54", "code": "G10 L20 P0" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 18, "notes": [] } }, { "stepIndex": 45, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 25, "statement": "g0 x-# y+# z#", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-to-quadrant-center", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 8, "motionType": "rapid", "feed": 2100, "startJoint": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": -20, "y": 20, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": 0, "y": 0, "z": 10 }, "endTcp": { "x": -20, "y": 20, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 19, "notes": [] } }, { "stepIndex": 46, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "statement": "o call [#][#][#][#][#][#][#][#]", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "call", "result": { "status": "ok", "operation": "call-subroutine", "sourceLineKind": "call", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 20, "notes": [] } }, { "stepIndex": 47, "sourceFile": "helix_bc.ngc", "line": 1, "statement": "; helix using switchkins (xyzbc) b,c angles", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": false, "sourceLineKind": "comment", "result": { "status": "ok", "operation": "comment", "sourceLineKind": "comment", "executed": false, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 48, "sourceFile": "helix_bc.ngc", "line": 2, "statement": "osub", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": true, "sourceLineKind": "subroutine-boundary", "result": { "status": "ok", "operation": "subroutine-enter", "sourceLineKind": "subroutine-boundary", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 49, "sourceFile": "helix_bc.ngc", "line": 3, "statement": "# = #1 (=10)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "zmax": 10 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 50, "sourceFile": "helix_bc.ngc", "line": 4, "statement": "# = #2 (= 5)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "zmin": 5 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 51, "sourceFile": "helix_bc.ngc", "line": 5, "statement": "# = #3 (=10)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "r": 10 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 52, "sourceFile": "helix_bc.ngc", "line": 6, "statement": "# = #4 (=1000)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "frate": 1000 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 53, "sourceFile": "helix_bc.ngc", "line": 7, "statement": "# = #5 (=3)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "n": 3 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 54, "sourceFile": "helix_bc.ngc", "line": 8, "statement": "# = #6 (=0 NA)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "a": 0 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 55, "sourceFile": "helix_bc.ngc", "line": 9, "statement": "# = #7 (=45)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "b": 20 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 56, "sourceFile": "helix_bc.ngc", "line": 10, "statement": "# = #8 (=20)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "c": 45 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 57, "sourceFile": "helix_bc.ngc", "line": 12, "statement": "M429 ;Identity kinematics", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-identity", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "identity", "code": "M429" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 21, "notes": [] } }, { "stepIndex": 58, "sourceFile": "helix_bc.ngc", "line": 13, "statement": "g0 x[#<_x> - #] ;adjust for radius", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-radius-adjust", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 9, "motionType": "rapid", "feed": 2100, "startJoint": { "x": -20, "y": 20, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": -30, "y": 20, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": -20, "y": 20, "z": 10 }, "endTcp": { "x": -30, "y": 20, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 22, "notes": [] } }, { "stepIndex": 59, "sourceFile": "helix_bc.ngc", "line": 14, "statement": "g10l20p0 x0y0 z# b0 c0 ;new g54", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": true, "sourceLineKind": "offset", "result": { "status": "ok", "operation": "set-g54-offset", "sourceLineKind": "offset", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "workOffsetAfter": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "modalChange": { "coordinateSystem": "G54", "code": "G10 L20 P0" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 23, "notes": [] } }, { "stepIndex": 60, "sourceFile": "helix_bc.ngc", "line": 15, "statement": "M428 ;XYZBC", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-tcp-xyzbc", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "tcp-xyzbc", "code": "M428" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 24, "notes": [] } }, { "stepIndex": 61, "sourceFile": "helix_bc.ngc", "line": 16, "statement": "g0b#c# ;exercise b,c", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-bc-orient", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 10, "motionType": "rapid", "feed": 2100, "startJoint": { "x": -30, "y": 20, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": -30, "y": 20, "z": 10, "b": 20, "c": 45 }, "startTcp": { "x": -30, "y": 20, "z": 10 }, "endTcp": { "x": -30, "y": 20, "z": 10 }, "endToolAxis": { "i": 0.24184476264797528, "j": 0.24184476264797522, "k": 0.9396926207859084 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 25, "notes": [] } }, { "stepIndex": 62, "sourceFile": "helix_bc.ngc", "line": 17, "statement": "f# g2i#z# p# ;helix", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "feed-helix", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 11, "motionType": "arc", "feed": 1000, "startJoint": { "x": -30, "y": 20, "z": 10, "b": 20, "c": 45 }, "endJoint": { "x": -30, "y": 20, "z": 5, "b": 20, "c": 45 }, "startTcp": { "x": -30, "y": 20, "z": 10 }, "endTcp": { "x": -30, "y": 20, "z": 5 }, "endToolAxis": { "i": 0.24184476264797528, "j": 0.24184476264797522, "k": 0.9396926207859084 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 1000, "actualMmPerMin": 1000, "overridePercent": 100 }, "cutting": { "active": true, "cuttingSpeedMmPerMin": 1000 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 26, "notes": [] } }, { "stepIndex": 63, "sourceFile": "helix_bc.ngc", "line": 18, "statement": "M429 ;Identity kinematics", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-identity", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "identity", "code": "M429" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 1000, "actualMmPerMin": 1000, "overridePercent": 100 }, "cutting": { "active": true, "cuttingSpeedMmPerMin": 1000 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 1000, "actualMmPerMin": 1000, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 27, "notes": [] } }, { "stepIndex": 64, "sourceFile": "helix_bc.ngc", "line": 19, "statement": "g0 x0 y0 z# b0 c0 ;return to start", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-return-to-start", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 12, "motionType": "rapid", "feed": 2100, "startJoint": { "x": -30, "y": 20, "z": 5, "b": 20, "c": 45 }, "endJoint": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": -30, "y": 20, "z": 5 }, "endTcp": { "x": 0, "y": 0, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 1000, "actualMmPerMin": 1000, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 28, "notes": [] } }, { "stepIndex": 65, "sourceFile": "helix_bc.ngc", "line": 20, "statement": "g0 x[#<_x> + #] ;adjust restore", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-radius-restore", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 13, "motionType": "rapid", "feed": 2100, "startJoint": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": 10, "y": 0, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": 0, "y": 0, "z": 10 }, "endTcp": { "x": 10, "y": 0, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 29, "notes": [] } }, { "stepIndex": 66, "sourceFile": "helix_bc.ngc", "line": 21, "statement": "M428 ;XYZBC", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-tcp-xyzbc", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "tcp-xyzbc", "code": "M428" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 30, "notes": [] } }, { "stepIndex": 67, "sourceFile": "helix_bc.ngc", "line": 22, "statement": "oendsub", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": true, "sourceLineKind": "subroutine-boundary", "result": { "status": "ok", "operation": "subroutine-exit", "sourceLineKind": "subroutine-boundary", "executed": true, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 68, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 28, "statement": "; quadrant III", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": false, "sourceLineKind": "comment", "result": { "status": "ok", "operation": "comment-quadrant-III", "sourceLineKind": "comment", "executed": false, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 69, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 29, "statement": "M429 ;Identity kinematics", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-identity", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "identity", "code": "M429" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 31, "notes": [] } }, { "stepIndex": 70, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 30, "statement": "g53 g0 x0y0 z# b0 c0", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-machine-reset", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 14, "motionType": "rapid", "feed": 2100, "startJoint": { "x": 10, "y": 0, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": 10, "y": 0, "z": 10 }, "endTcp": { "x": 0, "y": 0, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 32, "notes": [] } }, { "stepIndex": 71, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 31, "statement": "g10l20p0 x0y0 z# b0 c0", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "offset", "result": { "status": "ok", "operation": "set-g54-offset", "sourceLineKind": "offset", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "workOffsetAfter": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "modalChange": { "coordinateSystem": "G54", "code": "G10 L20 P0" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 33, "notes": [] } }, { "stepIndex": 72, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 32, "statement": "g0 x-# y-# z#", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-to-quadrant-center", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 15, "motionType": "rapid", "feed": 2100, "startJoint": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": -20, "y": -20, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": 0, "y": 0, "z": 10 }, "endTcp": { "x": -20, "y": -20, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 34, "notes": [] } }, { "stepIndex": 73, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "statement": "o call [#][#][#][#][#][#][#][#]", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "call", "result": { "status": "ok", "operation": "call-subroutine", "sourceLineKind": "call", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 35, "notes": [] } }, { "stepIndex": 74, "sourceFile": "helix_bc.ngc", "line": 1, "statement": "; helix using switchkins (xyzbc) b,c angles", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": false, "sourceLineKind": "comment", "result": { "status": "ok", "operation": "comment", "sourceLineKind": "comment", "executed": false, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 75, "sourceFile": "helix_bc.ngc", "line": 2, "statement": "osub", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": true, "sourceLineKind": "subroutine-boundary", "result": { "status": "ok", "operation": "subroutine-enter", "sourceLineKind": "subroutine-boundary", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 76, "sourceFile": "helix_bc.ngc", "line": 3, "statement": "# = #1 (=10)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "zmax": 10 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 77, "sourceFile": "helix_bc.ngc", "line": 4, "statement": "# = #2 (= 5)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "zmin": 5 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 78, "sourceFile": "helix_bc.ngc", "line": 5, "statement": "# = #3 (=10)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "r": 10 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 79, "sourceFile": "helix_bc.ngc", "line": 6, "statement": "# = #4 (=1000)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "frate": 1000 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 80, "sourceFile": "helix_bc.ngc", "line": 7, "statement": "# = #5 (=3)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "n": 3 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 81, "sourceFile": "helix_bc.ngc", "line": 8, "statement": "# = #6 (=0 NA)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "a": 0 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 82, "sourceFile": "helix_bc.ngc", "line": 9, "statement": "# = #7 (=45)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "b": 20 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 83, "sourceFile": "helix_bc.ngc", "line": 10, "statement": "# = #8 (=20)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "c": 45 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 84, "sourceFile": "helix_bc.ngc", "line": 12, "statement": "M429 ;Identity kinematics", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-identity", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "identity", "code": "M429" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 36, "notes": [] } }, { "stepIndex": 85, "sourceFile": "helix_bc.ngc", "line": 13, "statement": "g0 x[#<_x> - #] ;adjust for radius", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-radius-adjust", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 16, "motionType": "rapid", "feed": 2100, "startJoint": { "x": -20, "y": -20, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": -30, "y": -20, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": -20, "y": -20, "z": 10 }, "endTcp": { "x": -30, "y": -20, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 37, "notes": [] } }, { "stepIndex": 86, "sourceFile": "helix_bc.ngc", "line": 14, "statement": "g10l20p0 x0y0 z# b0 c0 ;new g54", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": true, "sourceLineKind": "offset", "result": { "status": "ok", "operation": "set-g54-offset", "sourceLineKind": "offset", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "workOffsetAfter": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "modalChange": { "coordinateSystem": "G54", "code": "G10 L20 P0" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 38, "notes": [] } }, { "stepIndex": 87, "sourceFile": "helix_bc.ngc", "line": 15, "statement": "M428 ;XYZBC", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-tcp-xyzbc", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "tcp-xyzbc", "code": "M428" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 39, "notes": [] } }, { "stepIndex": 88, "sourceFile": "helix_bc.ngc", "line": 16, "statement": "g0b#c# ;exercise b,c", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-bc-orient", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 17, "motionType": "rapid", "feed": 2100, "startJoint": { "x": -30, "y": -20, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": -30, "y": -20, "z": 10, "b": 20, "c": 45 }, "startTcp": { "x": -30, "y": -20, "z": 10 }, "endTcp": { "x": -30, "y": -20, "z": 10 }, "endToolAxis": { "i": 0.24184476264797528, "j": 0.24184476264797522, "k": 0.9396926207859084 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 40, "notes": [] } }, { "stepIndex": 89, "sourceFile": "helix_bc.ngc", "line": 17, "statement": "f# g2i#z# p# ;helix", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "feed-helix", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 18, "motionType": "arc", "feed": 1000, "startJoint": { "x": -30, "y": -20, "z": 10, "b": 20, "c": 45 }, "endJoint": { "x": -30, "y": -20, "z": 5, "b": 20, "c": 45 }, "startTcp": { "x": -30, "y": -20, "z": 10 }, "endTcp": { "x": -30, "y": -20, "z": 5 }, "endToolAxis": { "i": 0.24184476264797528, "j": 0.24184476264797522, "k": 0.9396926207859084 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 1000, "actualMmPerMin": 1000, "overridePercent": 100 }, "cutting": { "active": true, "cuttingSpeedMmPerMin": 1000 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 41, "notes": [] } }, { "stepIndex": 90, "sourceFile": "helix_bc.ngc", "line": 18, "statement": "M429 ;Identity kinematics", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-identity", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "identity", "code": "M429" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 1000, "actualMmPerMin": 1000, "overridePercent": 100 }, "cutting": { "active": true, "cuttingSpeedMmPerMin": 1000 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 1000, "actualMmPerMin": 1000, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 42, "notes": [] } }, { "stepIndex": 91, "sourceFile": "helix_bc.ngc", "line": 19, "statement": "g0 x0 y0 z# b0 c0 ;return to start", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-return-to-start", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 19, "motionType": "rapid", "feed": 2100, "startJoint": { "x": -30, "y": -20, "z": 5, "b": 20, "c": 45 }, "endJoint": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": -30, "y": -20, "z": 5 }, "endTcp": { "x": 0, "y": 0, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 1000, "actualMmPerMin": 1000, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 43, "notes": [] } }, { "stepIndex": 92, "sourceFile": "helix_bc.ngc", "line": 20, "statement": "g0 x[#<_x> + #] ;adjust restore", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-radius-restore", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 20, "motionType": "rapid", "feed": 2100, "startJoint": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": 10, "y": 0, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": 0, "y": 0, "z": 10 }, "endTcp": { "x": 10, "y": 0, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 44, "notes": [] } }, { "stepIndex": 93, "sourceFile": "helix_bc.ngc", "line": 21, "statement": "M428 ;XYZBC", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-tcp-xyzbc", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "tcp-xyzbc", "code": "M428" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 45, "notes": [] } }, { "stepIndex": 94, "sourceFile": "helix_bc.ngc", "line": 22, "statement": "oendsub", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": true, "sourceLineKind": "subroutine-boundary", "result": { "status": "ok", "operation": "subroutine-exit", "sourceLineKind": "subroutine-boundary", "executed": true, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 95, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 35, "statement": "; quadrant IV", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": false, "sourceLineKind": "comment", "result": { "status": "ok", "operation": "comment-quadrant-IV", "sourceLineKind": "comment", "executed": false, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 96, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 36, "statement": "M429 ;Identity kinematics", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-identity", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "identity", "code": "M429" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 46, "notes": [] } }, { "stepIndex": 97, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 37, "statement": "g53 g0 x0y0 z# b0 c0", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-machine-reset", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 21, "motionType": "rapid", "feed": 2100, "startJoint": { "x": 10, "y": 0, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": 10, "y": 0, "z": 10 }, "endTcp": { "x": 0, "y": 0, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 47, "notes": [] } }, { "stepIndex": 98, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 38, "statement": "g10l20p0 x0y0 z# b0 c0", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "offset", "result": { "status": "ok", "operation": "set-g54-offset", "sourceLineKind": "offset", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "workOffsetAfter": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "modalChange": { "coordinateSystem": "G54", "code": "G10 L20 P0" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 48, "notes": [] } }, { "stepIndex": 99, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 39, "statement": "g0 x+# y-# z#", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-to-quadrant-center", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 22, "motionType": "rapid", "feed": 2100, "startJoint": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": 20, "y": -20, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": 0, "y": 0, "z": 10 }, "endTcp": { "x": 20, "y": -20, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 49, "notes": [] } }, { "stepIndex": 100, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "statement": "o call [#][#][#][#][#][#][#][#]", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "call", "result": { "status": "ok", "operation": "call-subroutine", "sourceLineKind": "call", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 50, "notes": [] } }, { "stepIndex": 101, "sourceFile": "helix_bc.ngc", "line": 1, "statement": "; helix using switchkins (xyzbc) b,c angles", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": false, "sourceLineKind": "comment", "result": { "status": "ok", "operation": "comment", "sourceLineKind": "comment", "executed": false, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 102, "sourceFile": "helix_bc.ngc", "line": 2, "statement": "osub", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": true, "sourceLineKind": "subroutine-boundary", "result": { "status": "ok", "operation": "subroutine-enter", "sourceLineKind": "subroutine-boundary", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 103, "sourceFile": "helix_bc.ngc", "line": 3, "statement": "# = #1 (=10)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "zmax": 10 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 104, "sourceFile": "helix_bc.ngc", "line": 4, "statement": "# = #2 (= 5)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "zmin": 5 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 105, "sourceFile": "helix_bc.ngc", "line": 5, "statement": "# = #3 (=10)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "r": 10 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 106, "sourceFile": "helix_bc.ngc", "line": 6, "statement": "# = #4 (=1000)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "frate": 1000 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 107, "sourceFile": "helix_bc.ngc", "line": 7, "statement": "# = #5 (=3)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "n": 3 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 108, "sourceFile": "helix_bc.ngc", "line": 8, "statement": "# = #6 (=0 NA)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "a": 0 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 109, "sourceFile": "helix_bc.ngc", "line": 9, "statement": "# = #7 (=45)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "b": 20 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 110, "sourceFile": "helix_bc.ngc", "line": 10, "statement": "# = #8 (=20)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "c": 45 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 111, "sourceFile": "helix_bc.ngc", "line": 12, "statement": "M429 ;Identity kinematics", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-identity", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "identity", "code": "M429" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 51, "notes": [] } }, { "stepIndex": 112, "sourceFile": "helix_bc.ngc", "line": 13, "statement": "g0 x[#<_x> - #] ;adjust for radius", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-radius-adjust", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 23, "motionType": "rapid", "feed": 2100, "startJoint": { "x": 20, "y": -20, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": 10, "y": -20, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": 20, "y": -20, "z": 10 }, "endTcp": { "x": 10, "y": -20, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 52, "notes": [] } }, { "stepIndex": 113, "sourceFile": "helix_bc.ngc", "line": 14, "statement": "g10l20p0 x0y0 z# b0 c0 ;new g54", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": true, "sourceLineKind": "offset", "result": { "status": "ok", "operation": "set-g54-offset", "sourceLineKind": "offset", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "workOffsetAfter": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "modalChange": { "coordinateSystem": "G54", "code": "G10 L20 P0" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 53, "notes": [] } }, { "stepIndex": 114, "sourceFile": "helix_bc.ngc", "line": 15, "statement": "M428 ;XYZBC", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-tcp-xyzbc", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "tcp-xyzbc", "code": "M428" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 54, "notes": [] } }, { "stepIndex": 115, "sourceFile": "helix_bc.ngc", "line": 16, "statement": "g0b#c# ;exercise b,c", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-bc-orient", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 24, "motionType": "rapid", "feed": 2100, "startJoint": { "x": 10, "y": -20, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": 10, "y": -20, "z": 10, "b": 20, "c": 45 }, "startTcp": { "x": 10, "y": -20, "z": 10 }, "endTcp": { "x": 10, "y": -20, "z": 10 }, "endToolAxis": { "i": 0.24184476264797528, "j": 0.24184476264797522, "k": 0.9396926207859084 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 55, "notes": [] } }, { "stepIndex": 116, "sourceFile": "helix_bc.ngc", "line": 17, "statement": "f# g2i#z# p# ;helix", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "feed-helix", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 25, "motionType": "arc", "feed": 1000, "startJoint": { "x": 10, "y": -20, "z": 10, "b": 20, "c": 45 }, "endJoint": { "x": 10, "y": -20, "z": 5, "b": 20, "c": 45 }, "startTcp": { "x": 10, "y": -20, "z": 10 }, "endTcp": { "x": 10, "y": -20, "z": 5 }, "endToolAxis": { "i": 0.24184476264797528, "j": 0.24184476264797522, "k": 0.9396926207859084 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 1000, "actualMmPerMin": 1000, "overridePercent": 100 }, "cutting": { "active": true, "cuttingSpeedMmPerMin": 1000 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 56, "notes": [] } }, { "stepIndex": 117, "sourceFile": "helix_bc.ngc", "line": 18, "statement": "M429 ;Identity kinematics", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-identity", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "identity", "code": "M429" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 1000, "actualMmPerMin": 1000, "overridePercent": 100 }, "cutting": { "active": true, "cuttingSpeedMmPerMin": 1000 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 1000, "actualMmPerMin": 1000, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 57, "notes": [] } }, { "stepIndex": 118, "sourceFile": "helix_bc.ngc", "line": 19, "statement": "g0 x0 y0 z# b0 c0 ;return to start", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-return-to-start", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 26, "motionType": "rapid", "feed": 2100, "startJoint": { "x": 10, "y": -20, "z": 5, "b": 20, "c": 45 }, "endJoint": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": 10, "y": -20, "z": 5 }, "endTcp": { "x": 0, "y": 0, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 1000, "actualMmPerMin": 1000, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 58, "notes": [] } }, { "stepIndex": 119, "sourceFile": "helix_bc.ngc", "line": 20, "statement": "g0 x[#<_x> + #] ;adjust restore", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-radius-restore", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 27, "motionType": "rapid", "feed": 2100, "startJoint": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": 10, "y": 0, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": 0, "y": 0, "z": 10 }, "endTcp": { "x": 10, "y": 0, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 59, "notes": [] } }, { "stepIndex": 120, "sourceFile": "helix_bc.ngc", "line": 21, "statement": "M428 ;XYZBC", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-tcp-xyzbc", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "tcp-xyzbc", "code": "M428" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 60, "notes": [] } }, { "stepIndex": 121, "sourceFile": "helix_bc.ngc", "line": 22, "statement": "oendsub", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": true, "sourceLineKind": "subroutine-boundary", "result": { "status": "ok", "operation": "subroutine-exit", "sourceLineKind": "subroutine-boundary", "executed": true, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 122, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 42, "statement": ";final position", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": false, "sourceLineKind": "comment", "result": { "status": "ok", "operation": "comment-final-position", "sourceLineKind": "comment", "executed": false, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 123, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 43, "statement": "M429 ;Identity kinematics", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-identity", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "identity", "code": "M429" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 61, "notes": [] } }, { "stepIndex": 124, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 44, "statement": "g53 g0 x0y0 z# ;MACHINE coordinates", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-final-machine-reset", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 28, "motionType": "rapid", "feed": 2100, "startJoint": { "x": 10, "y": 0, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": 10, "y": 0, "z": 10 }, "endTcp": { "x": 0, "y": 0, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 62, "notes": [] } }, { "stepIndex": 125, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 45, "statement": "g10l20p0 x0y0 z# ;new g54", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "offset", "result": { "status": "ok", "operation": "set-g54-offset", "sourceLineKind": "offset", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "workOffsetAfter": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "modalChange": { "coordinateSystem": "G54", "code": "G10 L20 P0" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 63, "notes": [] } }, { "stepIndex": 126, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 47, "statement": "oendsub", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "subroutine-boundary", "result": { "status": "ok", "operation": "subroutine-exit", "sourceLineKind": "subroutine-boundary", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 127, "sourceFile": "xyzbc_switchkins.ngc", "line": 3, "statement": "m2", "callDepth": 0, "callStack": [], "executed": true, "sourceLineKind": "program-end", "result": { "status": "ok", "operation": "program-end", "sourceLineKind": "program-end", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "program": "ended", "code": "M2" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } } ], "summary": { "motionStepCount": 29, "switchkinsStepCount": 21, "parameterAssignmentStepCount": 41, "workOffsetStepCount": 9, "callStepCount": 5, "noMotionStepCount": 99, "finalJoint": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "finalKinematics": "identity" }, "semanticBoundary": "complete_gcode_execution_process_expanded_from_linuxcnc_xyzbc_trt_sources" }, "currentVelocity": 0, "operatorMessage": "task/HAL estop reset; machine off", "pauseButton": { "action": "pause-resume", "paused": "false", "title": "Pause program", "ariaPressed": "false" }, "canvasDataset": { "width": 383, "height": 572, "threeToolAxis": "{\"x\":0,\"y\":0,\"z\":1}", "threeToolGlyphAxis": "{\"x\":0,\"y\":0,\"z\":1}" }, "canvasToolhead": { "x": 0, "y": 0, "z": 0.01 }, "canvasVismachPins": null, "programPaneDataset": { "region": "program", "liveSourceFile": "xyzbc_switchkins_sub.ngc", "liveSourceLine": "16", "liveSampleIndex": "0", "liveExecutedSamples": "1", "gcodeExecutionStatus": "ok", "gcodeExecutionStepCount": "128", "gcodeMotionStepCount": "29", "gcodeParameterStepCount": "41", "gcodeCallDepth": "1" }, "processMonitorDataset": { "linuxcncProcessMonitor": "", "sourceMode": "linuxcnc-task-motion-hal-wasm", "taskHalReady": "true", "activeLine": "1", "liveSourceFile": "xyzbc_switchkins_sub.ngc", "liveSourceLine": "16", "liveSampleIndex": "0" } }, "after": { "runState": "idle", "taskState": "on", "powerOn": true, "estopActive": false, "allHomed": false, "mode": "manual", "interpState": "idle", "taskPaused": false, "motionPaused": false, "activeLine": 16, "sampleIndex": 0, "programExecutionSourceMode": "linuxcnc-task-motion-hal-wasm", "programUiExecution": { "apiName": "web-rtcp-5axis-ui-gcode-live-execution", "status": "idle", "source": "programAxisPreviewPath.samples", "samplePeriodMs": 50, "sampleIndex": 0, "sampleCount": 1300, "executedSampleCount": 1, "timeMs": 0, "activeProgram": "configs/sim/axis/vismach/5axis/table-rotary-tilting/demos/xyzbc_switchkins.ngc", "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 16, "statement": "g53 g0 x0y0 z# b0 c0 ; quadrant I", "operation": "rapid-machine-reset", "executionIndex": 2, "gcodeStepIndex": 16, "segmentIndex": 0, "motionType": "rapid", "activeKinematics": "identity", "joint": { "x": 0, "y": 0, "z": 0, "a": 0, "b": 0, "c": 0 }, "tcp": { "x": 0, "y": 0, "z": 10 }, "toolAxis": { "i": 0, "j": 0, "k": 1 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "machineState": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "semanticBoundary": "ui_updates_from_real_expanded_linuxcnc_gcode_sample_stream" }, "currentVelocity": 0, "operatorMessage": "task/HAL machine power on" } }, { "label": "Home All", "selector": "[data-action=\"home-all\"]", "at": "2026-07-09T17:32:13.825Z", "elapsedMs": 655, "before": { "machineProfile": "xyzbc-trt", "selectedGcodeSourceRel": "configs/sim/axis/vismach/5axis/table-rotary-tilting/demos/xyzbc_switchkins.ngc", "taskHalLoaded": true, "taskHalRuntimeReadiness": { "apiName": "web-rtcp-5axis-linuxcnc-task-hal-runtime-readiness", "loaded": true, "semanticBoundary": "linuxcnc_task_motion_hal_wasm_simulation_runtime", "sdkSemanticBoundary": "linuxcnc_task_motion_hal_wasm_phase4_minimal", "executionContext": "direct", "workerUrl": null, "taskRuntimeReady": true, "motionRuntimeReady": true, "halRuntimeReady": true, "halSyncReady": true, "nativeTaskReady": true, "nativeHalSyncReady": true, "hardwareDrive": false, "hostRealtimeKernel": false, "externalUserMProcessReady": false }, "runState": "idle", "taskState": "on", "powerOn": true, "estopActive": false, "allHomed": false, "mode": "manual", "interpState": "idle", "interpResumeState": "idle", "taskPaused": false, "motionPaused": false, "rtcpState": "off", "kinsType": "identity", "activeLine": 16, "programExecutionSourceMode": "linuxcnc-task-motion-hal-wasm", "programExecutionSampleIndex": 0, "programRuntimeFeedback": { "apiName": "web-rtcp-5axis-program-runtime-feedback", "sourceMode": "linuxcnc-task-motion-hal-wasm", "semanticBoundary": "linuxcnc_task_motion_hal_wasm_simulation_runtime", "sampleIndex": 0, "motionIndex": 0, "line": 1, "motionProgramLine": 0, "halProgramLine": 0, "activeLineSource": "fallback", "activeLineHalSynced": false, "type": "TASK_MOTION", "paused": false, "timeSeconds": 0.04, "axisPose": { "x": 0, "y": 0, "z": 0, "a": 0, "b": 0, "c": 0 }, "currentVelocityMmPerMin": 0, "requestedVelocityMmPerMin": 0, "distanceToGo": 0, "dtg": { "x": 0, "y": 0, "z": 0 }, "queueDepth": 0, "activeDepth": 0, "cycle": 40, "taskCycle": 4, "halChangedPinCount": 0 }, "axisPose": { "x": 0, "y": 0, "z": 0, "a": 0, "b": 0, "c": 0 }, "dro": { "x": 0, "y": 0, "z": 0, "a": 0, "b": 0, "c": 0, "tcpX": 0, "tcpY": 0, "tcpZ": 0, "dtgX": 0, "dtgY": 0, "dtgZ": 0 }, "programUiExecution": { "apiName": "web-rtcp-5axis-ui-gcode-live-execution", "status": "idle", "source": "programAxisPreviewPath.samples", "samplePeriodMs": 50, "sampleIndex": 0, "sampleCount": 1300, "executedSampleCount": 1, "timeMs": 0, "activeProgram": "configs/sim/axis/vismach/5axis/table-rotary-tilting/demos/xyzbc_switchkins.ngc", "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 16, "statement": "g53 g0 x0y0 z# b0 c0 ; quadrant I", "operation": "rapid-machine-reset", "executionIndex": 2, "gcodeStepIndex": 16, "segmentIndex": 0, "motionType": "rapid", "activeKinematics": "identity", "joint": { "x": 0, "y": 0, "z": 0, "a": 0, "b": 0, "c": 0 }, "tcp": { "x": 0, "y": 0, "z": 10 }, "toolAxis": { "i": 0, "j": 0, "k": 1 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "machineState": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "semanticBoundary": "ui_updates_from_real_expanded_linuxcnc_gcode_sample_stream" }, "samplePeriodMs": 50, "sampleCount": 1300, "gcodeExecutionProcess": { "apiName": "linuxcnc-xyzbc-trt-gcode-complete-execution-process", "status": "ok", "program": "xyzbc_switchkins.ngc", "sourceFiles": [ { "sourceFile": "xyzbc_switchkins.ngc", "lineCount": 3 }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "lineCount": 41 }, { "sourceFile": "helix_bc.ngc", "lineCount": 21 } ], "executionStepCount": 128, "sourceLineCoverage": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 1, "statement": "; zmax zmin r frate n a b c dist", "sourceLineKind": "comment", "visitCount": 1, "producedMotionCount": 0, "operations": [ "comment" ] }, { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "statement": "o call [10] [5] [10][1000][3][0][20][45][20]", "sourceLineKind": "call", "visitCount": 1, "producedMotionCount": 0, "operations": [ "call-subroutine" ] }, { "sourceFile": "xyzbc_switchkins.ngc", "line": 3, "statement": "m2", "sourceLineKind": "mcode", "visitCount": 1, "producedMotionCount": 0, "operations": [ "program-end" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 1, "statement": "; ngcgui-compatible subroutine", "sourceLineKind": "comment", "visitCount": 1, "producedMotionCount": 0, "operations": [ "comment" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 2, "statement": "(info: helix in each quadrant at angles B,C)", "sourceLineKind": "comment", "visitCount": 1, "producedMotionCount": 0, "operations": [ "info-comment" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 3, "statement": "osub", "sourceLineKind": "subroutine-boundary", "visitCount": 1, "producedMotionCount": 0, "operations": [ "subroutine-enter" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 4, "statement": "# = #1 (=10)", "sourceLineKind": "assignment", "visitCount": 1, "producedMotionCount": 0, "operations": [ "parameter-assignment" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 5, "statement": "# = #2 (= 5)", "sourceLineKind": "assignment", "visitCount": 1, "producedMotionCount": 0, "operations": [ "parameter-assignment" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 6, "statement": "# = #3 (=10 radius)", "sourceLineKind": "assignment", "visitCount": 1, "producedMotionCount": 0, "operations": [ "parameter-assignment" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 7, "statement": "# = #4 (=1000 feedrate)", "sourceLineKind": "assignment", "visitCount": 1, "producedMotionCount": 0, "operations": [ "parameter-assignment" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 8, "statement": "# = #5 (=3 n circles)", "sourceLineKind": "assignment", "visitCount": 1, "producedMotionCount": 0, "operations": [ "parameter-assignment" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 9, "statement": "# = #6 (=0 A angle NA)", "sourceLineKind": "assignment", "visitCount": 1, "producedMotionCount": 0, "operations": [ "parameter-assignment" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 10, "statement": "# = #7 (=30 B angle)", "sourceLineKind": "assignment", "visitCount": 1, "producedMotionCount": 0, "operations": [ "parameter-assignment" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 11, "statement": "# = #8 (=45 C angle)", "sourceLineKind": "assignment", "visitCount": 1, "producedMotionCount": 0, "operations": [ "parameter-assignment" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 12, "statement": "# = #9 (=20 distance)", "sourceLineKind": "assignment", "visitCount": 1, "producedMotionCount": 0, "operations": [ "parameter-assignment" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 14, "statement": "; quadrant I", "sourceLineKind": "comment", "visitCount": 1, "producedMotionCount": 0, "operations": [ "comment-quadrant-I" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 15, "statement": "M429 ;Identity kinematics", "sourceLineKind": "mcode", "visitCount": 1, "producedMotionCount": 0, "operations": [ "switchkins-identity" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 16, "statement": "g53 g0 x0y0 z# b0 c0 ;MACHINE coordinates", "sourceLineKind": "motion", "visitCount": 1, "producedMotionCount": 1, "operations": [ "rapid-machine-reset" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 17, "statement": "g10l20p0 x0y0 z# b0 c0 ;new g54", "sourceLineKind": "offset", "visitCount": 1, "producedMotionCount": 0, "operations": [ "set-g54-offset" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 18, "statement": "g0 x+# y+# z# ;move to pattern center position", "sourceLineKind": "motion", "visitCount": 1, "producedMotionCount": 1, "operations": [ "rapid-to-quadrant-center" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "statement": "o call [#][#][#][#][#][#][#][#]", "sourceLineKind": "call", "visitCount": 1, "producedMotionCount": 0, "operations": [ "call-subroutine" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 21, "statement": "; quadrant II", "sourceLineKind": "comment", "visitCount": 1, "producedMotionCount": 0, "operations": [ "comment-quadrant-II" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 22, "statement": "M429 ;Identity kinematics", "sourceLineKind": "mcode", "visitCount": 1, "producedMotionCount": 0, "operations": [ "switchkins-identity" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 23, "statement": "g53 g0 x0y0 z# b0 c0", "sourceLineKind": "motion", "visitCount": 1, "producedMotionCount": 1, "operations": [ "rapid-machine-reset" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 24, "statement": "g10l20p0 x0y0 z# b0 c0", "sourceLineKind": "offset", "visitCount": 1, "producedMotionCount": 0, "operations": [ "set-g54-offset" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 25, "statement": "g0 x-# y+# z#", "sourceLineKind": "motion", "visitCount": 1, "producedMotionCount": 1, "operations": [ "rapid-to-quadrant-center" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "statement": "o call [#][#][#][#][#][#][#][#]", "sourceLineKind": "call", "visitCount": 1, "producedMotionCount": 0, "operations": [ "call-subroutine" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 28, "statement": "; quadrant III", "sourceLineKind": "comment", "visitCount": 1, "producedMotionCount": 0, "operations": [ "comment-quadrant-III" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 29, "statement": "M429 ;Identity kinematics", "sourceLineKind": "mcode", "visitCount": 1, "producedMotionCount": 0, "operations": [ "switchkins-identity" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 30, "statement": "g53 g0 x0y0 z# b0 c0", "sourceLineKind": "motion", "visitCount": 1, "producedMotionCount": 1, "operations": [ "rapid-machine-reset" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 31, "statement": "g10l20p0 x0y0 z# b0 c0", "sourceLineKind": "offset", "visitCount": 1, "producedMotionCount": 0, "operations": [ "set-g54-offset" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 32, "statement": "g0 x-# y-# z#", "sourceLineKind": "motion", "visitCount": 1, "producedMotionCount": 1, "operations": [ "rapid-to-quadrant-center" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "statement": "o call [#][#][#][#][#][#][#][#]", "sourceLineKind": "call", "visitCount": 1, "producedMotionCount": 0, "operations": [ "call-subroutine" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 35, "statement": "; quadrant IV", "sourceLineKind": "comment", "visitCount": 1, "producedMotionCount": 0, "operations": [ "comment-quadrant-IV" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 36, "statement": "M429 ;Identity kinematics", "sourceLineKind": "mcode", "visitCount": 1, "producedMotionCount": 0, "operations": [ "switchkins-identity" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 37, "statement": "g53 g0 x0y0 z# b0 c0", "sourceLineKind": "motion", "visitCount": 1, "producedMotionCount": 1, "operations": [ "rapid-machine-reset" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 38, "statement": "g10l20p0 x0y0 z# b0 c0", "sourceLineKind": "offset", "visitCount": 1, "producedMotionCount": 0, "operations": [ "set-g54-offset" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 39, "statement": "g0 x+# y-# z#", "sourceLineKind": "motion", "visitCount": 1, "producedMotionCount": 1, "operations": [ "rapid-to-quadrant-center" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "statement": "o call [#][#][#][#][#][#][#][#]", "sourceLineKind": "call", "visitCount": 1, "producedMotionCount": 0, "operations": [ "call-subroutine" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 42, "statement": ";final position", "sourceLineKind": "comment", "visitCount": 1, "producedMotionCount": 0, "operations": [ "comment-final-position" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 43, "statement": "M429 ;Identity kinematics", "sourceLineKind": "mcode", "visitCount": 1, "producedMotionCount": 0, "operations": [ "switchkins-identity" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 44, "statement": "g53 g0 x0y0 z# ;MACHINE coordinates", "sourceLineKind": "motion", "visitCount": 1, "producedMotionCount": 1, "operations": [ "rapid-final-machine-reset" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 45, "statement": "g10l20p0 x0y0 z# ;new g54", "sourceLineKind": "offset", "visitCount": 1, "producedMotionCount": 0, "operations": [ "set-g54-offset" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 47, "statement": "oendsub", "sourceLineKind": "subroutine-boundary", "visitCount": 1, "producedMotionCount": 0, "operations": [ "subroutine-exit" ] }, { "sourceFile": "helix_bc.ngc", "line": 1, "statement": "; helix using switchkins (xyzbc) b,c angles", "sourceLineKind": "comment", "visitCount": 4, "producedMotionCount": 0, "operations": [ "comment" ] }, { "sourceFile": "helix_bc.ngc", "line": 2, "statement": "osub", "sourceLineKind": "subroutine-boundary", "visitCount": 4, "producedMotionCount": 0, "operations": [ "subroutine-enter" ] }, { "sourceFile": "helix_bc.ngc", "line": 3, "statement": "# = #1 (=10)", "sourceLineKind": "assignment", "visitCount": 4, "producedMotionCount": 0, "operations": [ "parameter-assignment" ] }, { "sourceFile": "helix_bc.ngc", "line": 4, "statement": "# = #2 (= 5)", "sourceLineKind": "assignment", "visitCount": 4, "producedMotionCount": 0, "operations": [ "parameter-assignment" ] }, { "sourceFile": "helix_bc.ngc", "line": 5, "statement": "# = #3 (=10)", "sourceLineKind": "assignment", "visitCount": 4, "producedMotionCount": 0, "operations": [ "parameter-assignment" ] }, { "sourceFile": "helix_bc.ngc", "line": 6, "statement": "# = #4 (=1000)", "sourceLineKind": "assignment", "visitCount": 4, "producedMotionCount": 0, "operations": [ "parameter-assignment" ] }, { "sourceFile": "helix_bc.ngc", "line": 7, "statement": "# = #5 (=3)", "sourceLineKind": "assignment", "visitCount": 4, "producedMotionCount": 0, "operations": [ "parameter-assignment" ] }, { "sourceFile": "helix_bc.ngc", "line": 8, "statement": "# = #6 (=0 NA)", "sourceLineKind": "assignment", "visitCount": 4, "producedMotionCount": 0, "operations": [ "parameter-assignment" ] }, { "sourceFile": "helix_bc.ngc", "line": 9, "statement": "# = #7 (=45)", "sourceLineKind": "assignment", "visitCount": 4, "producedMotionCount": 0, "operations": [ "parameter-assignment" ] }, { "sourceFile": "helix_bc.ngc", "line": 10, "statement": "# = #8 (=20)", "sourceLineKind": "assignment", "visitCount": 4, "producedMotionCount": 0, "operations": [ "parameter-assignment" ] }, { "sourceFile": "helix_bc.ngc", "line": 12, "statement": "M429 ;Identity kinematics", "sourceLineKind": "mcode", "visitCount": 4, "producedMotionCount": 0, "operations": [ "switchkins-identity" ] }, { "sourceFile": "helix_bc.ngc", "line": 13, "statement": "g0 x[#<_x> - #] ;adjust for radius", "sourceLineKind": "motion", "visitCount": 4, "producedMotionCount": 4, "operations": [ "rapid-radius-adjust" ] }, { "sourceFile": "helix_bc.ngc", "line": 14, "statement": "g10l20p0 x0y0 z# b0 c0 ;new g54", "sourceLineKind": "offset", "visitCount": 4, "producedMotionCount": 0, "operations": [ "set-g54-offset" ] }, { "sourceFile": "helix_bc.ngc", "line": 15, "statement": "M428 ;XYZBC", "sourceLineKind": "mcode", "visitCount": 4, "producedMotionCount": 0, "operations": [ "switchkins-tcp-xyzbc" ] }, { "sourceFile": "helix_bc.ngc", "line": 16, "statement": "g0b#c# ;exercise b,c", "sourceLineKind": "motion", "visitCount": 4, "producedMotionCount": 4, "operations": [ "rapid-bc-orient" ] }, { "sourceFile": "helix_bc.ngc", "line": 17, "statement": "f# g2i#z# p# ;helix", "sourceLineKind": "motion", "visitCount": 4, "producedMotionCount": 4, "operations": [ "feed-helix" ] }, { "sourceFile": "helix_bc.ngc", "line": 18, "statement": "M429 ;Identity kinematics", "sourceLineKind": "mcode", "visitCount": 4, "producedMotionCount": 0, "operations": [ "switchkins-identity" ] }, { "sourceFile": "helix_bc.ngc", "line": 19, "statement": "g0 x0 y0 z# b0 c0 ;return to start", "sourceLineKind": "motion", "visitCount": 4, "producedMotionCount": 4, "operations": [ "rapid-return-to-start" ] }, { "sourceFile": "helix_bc.ngc", "line": 20, "statement": "g0 x[#<_x> + #] ;adjust restore", "sourceLineKind": "motion", "visitCount": 4, "producedMotionCount": 4, "operations": [ "rapid-radius-restore" ] }, { "sourceFile": "helix_bc.ngc", "line": 21, "statement": "M428 ;XYZBC", "sourceLineKind": "mcode", "visitCount": 4, "producedMotionCount": 0, "operations": [ "switchkins-tcp-xyzbc" ] }, { "sourceFile": "helix_bc.ngc", "line": 22, "statement": "oendsub", "sourceLineKind": "subroutine-boundary", "visitCount": 4, "producedMotionCount": 0, "operations": [ "subroutine-exit" ] } ], "executionSteps": [ { "stepIndex": 0, "sourceFile": "xyzbc_switchkins.ngc", "line": 1, "statement": "; zmax zmin r frate n a b c dist", "callDepth": 0, "callStack": [], "executed": false, "sourceLineKind": "comment", "result": { "status": "ok", "operation": "comment", "sourceLineKind": "comment", "executed": false, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 1, "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "statement": "o call [10] [5] [10][1000][3][0][20][45][20]", "callDepth": 0, "callStack": [], "executed": true, "sourceLineKind": "call", "result": { "status": "ok", "operation": "call-subroutine", "sourceLineKind": "call", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 0, "notes": [] } }, { "stepIndex": 2, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 1, "statement": "; ngcgui-compatible subroutine", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": false, "sourceLineKind": "comment", "result": { "status": "ok", "operation": "comment", "sourceLineKind": "comment", "executed": false, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 3, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 2, "statement": "(info: helix in each quadrant at angles B,C)", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": false, "sourceLineKind": "comment", "result": { "status": "ok", "operation": "info-comment", "sourceLineKind": "comment", "executed": false, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 4, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 3, "statement": "osub", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "subroutine-boundary", "result": { "status": "ok", "operation": "subroutine-enter", "sourceLineKind": "subroutine-boundary", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 5, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 4, "statement": "# = #1 (=10)", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": {}, "parametersChanged": { "zmax": 10 }, "parametersAfter": { "zmax": 10 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 6, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 5, "statement": "# = #2 (= 5)", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10 }, "parametersChanged": { "zmin": 5 }, "parametersAfter": { "zmax": 10, "zmin": 5 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 7, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 6, "statement": "# = #3 (=10 radius)", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5 }, "parametersChanged": { "r": 10 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 8, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 7, "statement": "# = #4 (=1000 feedrate)", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10 }, "parametersChanged": { "frate": 1000 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 9, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 8, "statement": "# = #5 (=3 n circles)", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000 }, "parametersChanged": { "n": 3 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 10, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 9, "statement": "# = #6 (=0 A angle NA)", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3 }, "parametersChanged": { "a": 0 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 11, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 10, "statement": "# = #7 (=30 B angle)", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0 }, "parametersChanged": { "b": 20 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 12, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 11, "statement": "# = #8 (=45 C angle)", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20 }, "parametersChanged": { "c": 45 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 13, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 12, "statement": "# = #9 (=20 distance)", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45 }, "parametersChanged": { "dist": 20 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 14, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 14, "statement": "; quadrant I", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": false, "sourceLineKind": "comment", "result": { "status": "ok", "operation": "comment-quadrant-I", "sourceLineKind": "comment", "executed": false, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 15, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 15, "statement": "M429 ;Identity kinematics", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-identity", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "identity", "code": "M429" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 1, "notes": [] } }, { "stepIndex": 16, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 16, "statement": "g53 g0 x0y0 z# b0 c0 ;MACHINE coordinates", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-machine-reset", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 0, "motionType": "rapid", "feed": 2100, "startJoint": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": 0, "y": 0, "z": 10 }, "endTcp": { "x": 0, "y": 0, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 2, "notes": [] } }, { "stepIndex": 17, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 17, "statement": "g10l20p0 x0y0 z# b0 c0 ;new g54", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "offset", "result": { "status": "ok", "operation": "set-g54-offset", "sourceLineKind": "offset", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "workOffsetAfter": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "modalChange": { "coordinateSystem": "G54", "code": "G10 L20 P0" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 3, "notes": [] } }, { "stepIndex": 18, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 18, "statement": "g0 x+# y+# z# ;move to pattern center position", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-to-quadrant-center", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 1, "motionType": "rapid", "feed": 2100, "startJoint": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": 20, "y": 20, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": 0, "y": 0, "z": 10 }, "endTcp": { "x": 20, "y": 20, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 4, "notes": [] } }, { "stepIndex": 19, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "statement": "o call [#][#][#][#][#][#][#][#]", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "call", "result": { "status": "ok", "operation": "call-subroutine", "sourceLineKind": "call", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 5, "notes": [] } }, { "stepIndex": 20, "sourceFile": "helix_bc.ngc", "line": 1, "statement": "; helix using switchkins (xyzbc) b,c angles", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": false, "sourceLineKind": "comment", "result": { "status": "ok", "operation": "comment", "sourceLineKind": "comment", "executed": false, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 21, "sourceFile": "helix_bc.ngc", "line": 2, "statement": "osub", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": true, "sourceLineKind": "subroutine-boundary", "result": { "status": "ok", "operation": "subroutine-enter", "sourceLineKind": "subroutine-boundary", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 22, "sourceFile": "helix_bc.ngc", "line": 3, "statement": "# = #1 (=10)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "zmax": 10 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 23, "sourceFile": "helix_bc.ngc", "line": 4, "statement": "# = #2 (= 5)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "zmin": 5 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 24, "sourceFile": "helix_bc.ngc", "line": 5, "statement": "# = #3 (=10)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "r": 10 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 25, "sourceFile": "helix_bc.ngc", "line": 6, "statement": "# = #4 (=1000)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "frate": 1000 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 26, "sourceFile": "helix_bc.ngc", "line": 7, "statement": "# = #5 (=3)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "n": 3 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 27, "sourceFile": "helix_bc.ngc", "line": 8, "statement": "# = #6 (=0 NA)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "a": 0 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 28, "sourceFile": "helix_bc.ngc", "line": 9, "statement": "# = #7 (=45)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "b": 20 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 29, "sourceFile": "helix_bc.ngc", "line": 10, "statement": "# = #8 (=20)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "c": 45 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 30, "sourceFile": "helix_bc.ngc", "line": 12, "statement": "M429 ;Identity kinematics", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-identity", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "identity", "code": "M429" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 6, "notes": [] } }, { "stepIndex": 31, "sourceFile": "helix_bc.ngc", "line": 13, "statement": "g0 x[#<_x> - #] ;adjust for radius", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-radius-adjust", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 2, "motionType": "rapid", "feed": 2100, "startJoint": { "x": 20, "y": 20, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": 10, "y": 20, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": 20, "y": 20, "z": 10 }, "endTcp": { "x": 10, "y": 20, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 7, "notes": [] } }, { "stepIndex": 32, "sourceFile": "helix_bc.ngc", "line": 14, "statement": "g10l20p0 x0y0 z# b0 c0 ;new g54", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": true, "sourceLineKind": "offset", "result": { "status": "ok", "operation": "set-g54-offset", "sourceLineKind": "offset", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "workOffsetAfter": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "modalChange": { "coordinateSystem": "G54", "code": "G10 L20 P0" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 8, "notes": [] } }, { "stepIndex": 33, "sourceFile": "helix_bc.ngc", "line": 15, "statement": "M428 ;XYZBC", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-tcp-xyzbc", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "tcp-xyzbc", "code": "M428" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 9, "notes": [] } }, { "stepIndex": 34, "sourceFile": "helix_bc.ngc", "line": 16, "statement": "g0b#c# ;exercise b,c", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-bc-orient", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 3, "motionType": "rapid", "feed": 2100, "startJoint": { "x": 10, "y": 20, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": 10, "y": 20, "z": 10, "b": 20, "c": 45 }, "startTcp": { "x": 10, "y": 20, "z": 10 }, "endTcp": { "x": 10, "y": 20, "z": 10 }, "endToolAxis": { "i": 0.24184476264797528, "j": 0.24184476264797522, "k": 0.9396926207859084 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 10, "notes": [] } }, { "stepIndex": 35, "sourceFile": "helix_bc.ngc", "line": 17, "statement": "f# g2i#z# p# ;helix", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "feed-helix", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 4, "motionType": "arc", "feed": 1000, "startJoint": { "x": 10, "y": 20, "z": 10, "b": 20, "c": 45 }, "endJoint": { "x": 10, "y": 20, "z": 5, "b": 20, "c": 45 }, "startTcp": { "x": 10, "y": 20, "z": 10 }, "endTcp": { "x": 10, "y": 20, "z": 5 }, "endToolAxis": { "i": 0.24184476264797528, "j": 0.24184476264797522, "k": 0.9396926207859084 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 1000, "actualMmPerMin": 1000, "overridePercent": 100 }, "cutting": { "active": true, "cuttingSpeedMmPerMin": 1000 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 11, "notes": [] } }, { "stepIndex": 36, "sourceFile": "helix_bc.ngc", "line": 18, "statement": "M429 ;Identity kinematics", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-identity", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "identity", "code": "M429" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 1000, "actualMmPerMin": 1000, "overridePercent": 100 }, "cutting": { "active": true, "cuttingSpeedMmPerMin": 1000 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 1000, "actualMmPerMin": 1000, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 12, "notes": [] } }, { "stepIndex": 37, "sourceFile": "helix_bc.ngc", "line": 19, "statement": "g0 x0 y0 z# b0 c0 ;return to start", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-return-to-start", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 5, "motionType": "rapid", "feed": 2100, "startJoint": { "x": 10, "y": 20, "z": 5, "b": 20, "c": 45 }, "endJoint": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": 10, "y": 20, "z": 5 }, "endTcp": { "x": 0, "y": 0, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 1000, "actualMmPerMin": 1000, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 13, "notes": [] } }, { "stepIndex": 38, "sourceFile": "helix_bc.ngc", "line": 20, "statement": "g0 x[#<_x> + #] ;adjust restore", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-radius-restore", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 6, "motionType": "rapid", "feed": 2100, "startJoint": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": 10, "y": 0, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": 0, "y": 0, "z": 10 }, "endTcp": { "x": 10, "y": 0, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 14, "notes": [] } }, { "stepIndex": 39, "sourceFile": "helix_bc.ngc", "line": 21, "statement": "M428 ;XYZBC", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-tcp-xyzbc", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "tcp-xyzbc", "code": "M428" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 15, "notes": [] } }, { "stepIndex": 40, "sourceFile": "helix_bc.ngc", "line": 22, "statement": "oendsub", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": true, "sourceLineKind": "subroutine-boundary", "result": { "status": "ok", "operation": "subroutine-exit", "sourceLineKind": "subroutine-boundary", "executed": true, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 41, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 21, "statement": "; quadrant II", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": false, "sourceLineKind": "comment", "result": { "status": "ok", "operation": "comment-quadrant-II", "sourceLineKind": "comment", "executed": false, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 42, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 22, "statement": "M429 ;Identity kinematics", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-identity", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "identity", "code": "M429" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 16, "notes": [] } }, { "stepIndex": 43, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 23, "statement": "g53 g0 x0y0 z# b0 c0", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-machine-reset", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 7, "motionType": "rapid", "feed": 2100, "startJoint": { "x": 10, "y": 0, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": 10, "y": 0, "z": 10 }, "endTcp": { "x": 0, "y": 0, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 17, "notes": [] } }, { "stepIndex": 44, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 24, "statement": "g10l20p0 x0y0 z# b0 c0", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "offset", "result": { "status": "ok", "operation": "set-g54-offset", "sourceLineKind": "offset", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "workOffsetAfter": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "modalChange": { "coordinateSystem": "G54", "code": "G10 L20 P0" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 18, "notes": [] } }, { "stepIndex": 45, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 25, "statement": "g0 x-# y+# z#", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-to-quadrant-center", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 8, "motionType": "rapid", "feed": 2100, "startJoint": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": -20, "y": 20, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": 0, "y": 0, "z": 10 }, "endTcp": { "x": -20, "y": 20, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 19, "notes": [] } }, { "stepIndex": 46, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "statement": "o call [#][#][#][#][#][#][#][#]", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "call", "result": { "status": "ok", "operation": "call-subroutine", "sourceLineKind": "call", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 20, "notes": [] } }, { "stepIndex": 47, "sourceFile": "helix_bc.ngc", "line": 1, "statement": "; helix using switchkins (xyzbc) b,c angles", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": false, "sourceLineKind": "comment", "result": { "status": "ok", "operation": "comment", "sourceLineKind": "comment", "executed": false, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 48, "sourceFile": "helix_bc.ngc", "line": 2, "statement": "osub", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": true, "sourceLineKind": "subroutine-boundary", "result": { "status": "ok", "operation": "subroutine-enter", "sourceLineKind": "subroutine-boundary", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 49, "sourceFile": "helix_bc.ngc", "line": 3, "statement": "# = #1 (=10)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "zmax": 10 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 50, "sourceFile": "helix_bc.ngc", "line": 4, "statement": "# = #2 (= 5)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "zmin": 5 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 51, "sourceFile": "helix_bc.ngc", "line": 5, "statement": "# = #3 (=10)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "r": 10 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 52, "sourceFile": "helix_bc.ngc", "line": 6, "statement": "# = #4 (=1000)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "frate": 1000 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 53, "sourceFile": "helix_bc.ngc", "line": 7, "statement": "# = #5 (=3)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "n": 3 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 54, "sourceFile": "helix_bc.ngc", "line": 8, "statement": "# = #6 (=0 NA)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "a": 0 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 55, "sourceFile": "helix_bc.ngc", "line": 9, "statement": "# = #7 (=45)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "b": 20 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 56, "sourceFile": "helix_bc.ngc", "line": 10, "statement": "# = #8 (=20)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "c": 45 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 57, "sourceFile": "helix_bc.ngc", "line": 12, "statement": "M429 ;Identity kinematics", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-identity", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "identity", "code": "M429" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 21, "notes": [] } }, { "stepIndex": 58, "sourceFile": "helix_bc.ngc", "line": 13, "statement": "g0 x[#<_x> - #] ;adjust for radius", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-radius-adjust", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 9, "motionType": "rapid", "feed": 2100, "startJoint": { "x": -20, "y": 20, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": -30, "y": 20, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": -20, "y": 20, "z": 10 }, "endTcp": { "x": -30, "y": 20, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 22, "notes": [] } }, { "stepIndex": 59, "sourceFile": "helix_bc.ngc", "line": 14, "statement": "g10l20p0 x0y0 z# b0 c0 ;new g54", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": true, "sourceLineKind": "offset", "result": { "status": "ok", "operation": "set-g54-offset", "sourceLineKind": "offset", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "workOffsetAfter": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "modalChange": { "coordinateSystem": "G54", "code": "G10 L20 P0" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 23, "notes": [] } }, { "stepIndex": 60, "sourceFile": "helix_bc.ngc", "line": 15, "statement": "M428 ;XYZBC", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-tcp-xyzbc", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "tcp-xyzbc", "code": "M428" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 24, "notes": [] } }, { "stepIndex": 61, "sourceFile": "helix_bc.ngc", "line": 16, "statement": "g0b#c# ;exercise b,c", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-bc-orient", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 10, "motionType": "rapid", "feed": 2100, "startJoint": { "x": -30, "y": 20, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": -30, "y": 20, "z": 10, "b": 20, "c": 45 }, "startTcp": { "x": -30, "y": 20, "z": 10 }, "endTcp": { "x": -30, "y": 20, "z": 10 }, "endToolAxis": { "i": 0.24184476264797528, "j": 0.24184476264797522, "k": 0.9396926207859084 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 25, "notes": [] } }, { "stepIndex": 62, "sourceFile": "helix_bc.ngc", "line": 17, "statement": "f# g2i#z# p# ;helix", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "feed-helix", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 11, "motionType": "arc", "feed": 1000, "startJoint": { "x": -30, "y": 20, "z": 10, "b": 20, "c": 45 }, "endJoint": { "x": -30, "y": 20, "z": 5, "b": 20, "c": 45 }, "startTcp": { "x": -30, "y": 20, "z": 10 }, "endTcp": { "x": -30, "y": 20, "z": 5 }, "endToolAxis": { "i": 0.24184476264797528, "j": 0.24184476264797522, "k": 0.9396926207859084 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 1000, "actualMmPerMin": 1000, "overridePercent": 100 }, "cutting": { "active": true, "cuttingSpeedMmPerMin": 1000 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 26, "notes": [] } }, { "stepIndex": 63, "sourceFile": "helix_bc.ngc", "line": 18, "statement": "M429 ;Identity kinematics", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-identity", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "identity", "code": "M429" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 1000, "actualMmPerMin": 1000, "overridePercent": 100 }, "cutting": { "active": true, "cuttingSpeedMmPerMin": 1000 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 1000, "actualMmPerMin": 1000, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 27, "notes": [] } }, { "stepIndex": 64, "sourceFile": "helix_bc.ngc", "line": 19, "statement": "g0 x0 y0 z# b0 c0 ;return to start", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-return-to-start", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 12, "motionType": "rapid", "feed": 2100, "startJoint": { "x": -30, "y": 20, "z": 5, "b": 20, "c": 45 }, "endJoint": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": -30, "y": 20, "z": 5 }, "endTcp": { "x": 0, "y": 0, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 1000, "actualMmPerMin": 1000, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 28, "notes": [] } }, { "stepIndex": 65, "sourceFile": "helix_bc.ngc", "line": 20, "statement": "g0 x[#<_x> + #] ;adjust restore", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-radius-restore", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 13, "motionType": "rapid", "feed": 2100, "startJoint": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": 10, "y": 0, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": 0, "y": 0, "z": 10 }, "endTcp": { "x": 10, "y": 0, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 29, "notes": [] } }, { "stepIndex": 66, "sourceFile": "helix_bc.ngc", "line": 21, "statement": "M428 ;XYZBC", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-tcp-xyzbc", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "tcp-xyzbc", "code": "M428" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 30, "notes": [] } }, { "stepIndex": 67, "sourceFile": "helix_bc.ngc", "line": 22, "statement": "oendsub", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": true, "sourceLineKind": "subroutine-boundary", "result": { "status": "ok", "operation": "subroutine-exit", "sourceLineKind": "subroutine-boundary", "executed": true, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 68, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 28, "statement": "; quadrant III", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": false, "sourceLineKind": "comment", "result": { "status": "ok", "operation": "comment-quadrant-III", "sourceLineKind": "comment", "executed": false, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 69, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 29, "statement": "M429 ;Identity kinematics", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-identity", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "identity", "code": "M429" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 31, "notes": [] } }, { "stepIndex": 70, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 30, "statement": "g53 g0 x0y0 z# b0 c0", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-machine-reset", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 14, "motionType": "rapid", "feed": 2100, "startJoint": { "x": 10, "y": 0, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": 10, "y": 0, "z": 10 }, "endTcp": { "x": 0, "y": 0, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 32, "notes": [] } }, { "stepIndex": 71, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 31, "statement": "g10l20p0 x0y0 z# b0 c0", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "offset", "result": { "status": "ok", "operation": "set-g54-offset", "sourceLineKind": "offset", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "workOffsetAfter": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "modalChange": { "coordinateSystem": "G54", "code": "G10 L20 P0" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 33, "notes": [] } }, { "stepIndex": 72, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 32, "statement": "g0 x-# y-# z#", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-to-quadrant-center", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 15, "motionType": "rapid", "feed": 2100, "startJoint": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": -20, "y": -20, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": 0, "y": 0, "z": 10 }, "endTcp": { "x": -20, "y": -20, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 34, "notes": [] } }, { "stepIndex": 73, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "statement": "o call [#][#][#][#][#][#][#][#]", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "call", "result": { "status": "ok", "operation": "call-subroutine", "sourceLineKind": "call", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 35, "notes": [] } }, { "stepIndex": 74, "sourceFile": "helix_bc.ngc", "line": 1, "statement": "; helix using switchkins (xyzbc) b,c angles", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": false, "sourceLineKind": "comment", "result": { "status": "ok", "operation": "comment", "sourceLineKind": "comment", "executed": false, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 75, "sourceFile": "helix_bc.ngc", "line": 2, "statement": "osub", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": true, "sourceLineKind": "subroutine-boundary", "result": { "status": "ok", "operation": "subroutine-enter", "sourceLineKind": "subroutine-boundary", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 76, "sourceFile": "helix_bc.ngc", "line": 3, "statement": "# = #1 (=10)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "zmax": 10 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 77, "sourceFile": "helix_bc.ngc", "line": 4, "statement": "# = #2 (= 5)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "zmin": 5 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 78, "sourceFile": "helix_bc.ngc", "line": 5, "statement": "# = #3 (=10)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "r": 10 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 79, "sourceFile": "helix_bc.ngc", "line": 6, "statement": "# = #4 (=1000)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "frate": 1000 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 80, "sourceFile": "helix_bc.ngc", "line": 7, "statement": "# = #5 (=3)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "n": 3 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 81, "sourceFile": "helix_bc.ngc", "line": 8, "statement": "# = #6 (=0 NA)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "a": 0 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 82, "sourceFile": "helix_bc.ngc", "line": 9, "statement": "# = #7 (=45)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "b": 20 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 83, "sourceFile": "helix_bc.ngc", "line": 10, "statement": "# = #8 (=20)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "c": 45 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 84, "sourceFile": "helix_bc.ngc", "line": 12, "statement": "M429 ;Identity kinematics", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-identity", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "identity", "code": "M429" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 36, "notes": [] } }, { "stepIndex": 85, "sourceFile": "helix_bc.ngc", "line": 13, "statement": "g0 x[#<_x> - #] ;adjust for radius", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-radius-adjust", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 16, "motionType": "rapid", "feed": 2100, "startJoint": { "x": -20, "y": -20, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": -30, "y": -20, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": -20, "y": -20, "z": 10 }, "endTcp": { "x": -30, "y": -20, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 37, "notes": [] } }, { "stepIndex": 86, "sourceFile": "helix_bc.ngc", "line": 14, "statement": "g10l20p0 x0y0 z# b0 c0 ;new g54", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": true, "sourceLineKind": "offset", "result": { "status": "ok", "operation": "set-g54-offset", "sourceLineKind": "offset", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "workOffsetAfter": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "modalChange": { "coordinateSystem": "G54", "code": "G10 L20 P0" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 38, "notes": [] } }, { "stepIndex": 87, "sourceFile": "helix_bc.ngc", "line": 15, "statement": "M428 ;XYZBC", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-tcp-xyzbc", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "tcp-xyzbc", "code": "M428" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 39, "notes": [] } }, { "stepIndex": 88, "sourceFile": "helix_bc.ngc", "line": 16, "statement": "g0b#c# ;exercise b,c", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-bc-orient", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 17, "motionType": "rapid", "feed": 2100, "startJoint": { "x": -30, "y": -20, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": -30, "y": -20, "z": 10, "b": 20, "c": 45 }, "startTcp": { "x": -30, "y": -20, "z": 10 }, "endTcp": { "x": -30, "y": -20, "z": 10 }, "endToolAxis": { "i": 0.24184476264797528, "j": 0.24184476264797522, "k": 0.9396926207859084 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 40, "notes": [] } }, { "stepIndex": 89, "sourceFile": "helix_bc.ngc", "line": 17, "statement": "f# g2i#z# p# ;helix", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "feed-helix", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 18, "motionType": "arc", "feed": 1000, "startJoint": { "x": -30, "y": -20, "z": 10, "b": 20, "c": 45 }, "endJoint": { "x": -30, "y": -20, "z": 5, "b": 20, "c": 45 }, "startTcp": { "x": -30, "y": -20, "z": 10 }, "endTcp": { "x": -30, "y": -20, "z": 5 }, "endToolAxis": { "i": 0.24184476264797528, "j": 0.24184476264797522, "k": 0.9396926207859084 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 1000, "actualMmPerMin": 1000, "overridePercent": 100 }, "cutting": { "active": true, "cuttingSpeedMmPerMin": 1000 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 41, "notes": [] } }, { "stepIndex": 90, "sourceFile": "helix_bc.ngc", "line": 18, "statement": "M429 ;Identity kinematics", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-identity", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "identity", "code": "M429" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 1000, "actualMmPerMin": 1000, "overridePercent": 100 }, "cutting": { "active": true, "cuttingSpeedMmPerMin": 1000 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 1000, "actualMmPerMin": 1000, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 42, "notes": [] } }, { "stepIndex": 91, "sourceFile": "helix_bc.ngc", "line": 19, "statement": "g0 x0 y0 z# b0 c0 ;return to start", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-return-to-start", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 19, "motionType": "rapid", "feed": 2100, "startJoint": { "x": -30, "y": -20, "z": 5, "b": 20, "c": 45 }, "endJoint": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": -30, "y": -20, "z": 5 }, "endTcp": { "x": 0, "y": 0, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 1000, "actualMmPerMin": 1000, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 43, "notes": [] } }, { "stepIndex": 92, "sourceFile": "helix_bc.ngc", "line": 20, "statement": "g0 x[#<_x> + #] ;adjust restore", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-radius-restore", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 20, "motionType": "rapid", "feed": 2100, "startJoint": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": 10, "y": 0, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": 0, "y": 0, "z": 10 }, "endTcp": { "x": 10, "y": 0, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 44, "notes": [] } }, { "stepIndex": 93, "sourceFile": "helix_bc.ngc", "line": 21, "statement": "M428 ;XYZBC", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-tcp-xyzbc", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "tcp-xyzbc", "code": "M428" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 45, "notes": [] } }, { "stepIndex": 94, "sourceFile": "helix_bc.ngc", "line": 22, "statement": "oendsub", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": true, "sourceLineKind": "subroutine-boundary", "result": { "status": "ok", "operation": "subroutine-exit", "sourceLineKind": "subroutine-boundary", "executed": true, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 95, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 35, "statement": "; quadrant IV", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": false, "sourceLineKind": "comment", "result": { "status": "ok", "operation": "comment-quadrant-IV", "sourceLineKind": "comment", "executed": false, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 96, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 36, "statement": "M429 ;Identity kinematics", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-identity", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "identity", "code": "M429" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 46, "notes": [] } }, { "stepIndex": 97, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 37, "statement": "g53 g0 x0y0 z# b0 c0", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-machine-reset", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 21, "motionType": "rapid", "feed": 2100, "startJoint": { "x": 10, "y": 0, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": 10, "y": 0, "z": 10 }, "endTcp": { "x": 0, "y": 0, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 47, "notes": [] } }, { "stepIndex": 98, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 38, "statement": "g10l20p0 x0y0 z# b0 c0", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "offset", "result": { "status": "ok", "operation": "set-g54-offset", "sourceLineKind": "offset", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "workOffsetAfter": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "modalChange": { "coordinateSystem": "G54", "code": "G10 L20 P0" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 48, "notes": [] } }, { "stepIndex": 99, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 39, "statement": "g0 x+# y-# z#", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-to-quadrant-center", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 22, "motionType": "rapid", "feed": 2100, "startJoint": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": 20, "y": -20, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": 0, "y": 0, "z": 10 }, "endTcp": { "x": 20, "y": -20, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 49, "notes": [] } }, { "stepIndex": 100, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "statement": "o call [#][#][#][#][#][#][#][#]", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "call", "result": { "status": "ok", "operation": "call-subroutine", "sourceLineKind": "call", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 50, "notes": [] } }, { "stepIndex": 101, "sourceFile": "helix_bc.ngc", "line": 1, "statement": "; helix using switchkins (xyzbc) b,c angles", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": false, "sourceLineKind": "comment", "result": { "status": "ok", "operation": "comment", "sourceLineKind": "comment", "executed": false, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 102, "sourceFile": "helix_bc.ngc", "line": 2, "statement": "osub", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": true, "sourceLineKind": "subroutine-boundary", "result": { "status": "ok", "operation": "subroutine-enter", "sourceLineKind": "subroutine-boundary", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 103, "sourceFile": "helix_bc.ngc", "line": 3, "statement": "# = #1 (=10)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "zmax": 10 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 104, "sourceFile": "helix_bc.ngc", "line": 4, "statement": "# = #2 (= 5)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "zmin": 5 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 105, "sourceFile": "helix_bc.ngc", "line": 5, "statement": "# = #3 (=10)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "r": 10 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 106, "sourceFile": "helix_bc.ngc", "line": 6, "statement": "# = #4 (=1000)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "frate": 1000 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 107, "sourceFile": "helix_bc.ngc", "line": 7, "statement": "# = #5 (=3)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "n": 3 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 108, "sourceFile": "helix_bc.ngc", "line": 8, "statement": "# = #6 (=0 NA)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "a": 0 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 109, "sourceFile": "helix_bc.ngc", "line": 9, "statement": "# = #7 (=45)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "b": 20 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 110, "sourceFile": "helix_bc.ngc", "line": 10, "statement": "# = #8 (=20)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "c": 45 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 111, "sourceFile": "helix_bc.ngc", "line": 12, "statement": "M429 ;Identity kinematics", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-identity", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "identity", "code": "M429" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 51, "notes": [] } }, { "stepIndex": 112, "sourceFile": "helix_bc.ngc", "line": 13, "statement": "g0 x[#<_x> - #] ;adjust for radius", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-radius-adjust", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 23, "motionType": "rapid", "feed": 2100, "startJoint": { "x": 20, "y": -20, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": 10, "y": -20, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": 20, "y": -20, "z": 10 }, "endTcp": { "x": 10, "y": -20, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 52, "notes": [] } }, { "stepIndex": 113, "sourceFile": "helix_bc.ngc", "line": 14, "statement": "g10l20p0 x0y0 z# b0 c0 ;new g54", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": true, "sourceLineKind": "offset", "result": { "status": "ok", "operation": "set-g54-offset", "sourceLineKind": "offset", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "workOffsetAfter": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "modalChange": { "coordinateSystem": "G54", "code": "G10 L20 P0" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 53, "notes": [] } }, { "stepIndex": 114, "sourceFile": "helix_bc.ngc", "line": 15, "statement": "M428 ;XYZBC", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-tcp-xyzbc", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "tcp-xyzbc", "code": "M428" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 54, "notes": [] } }, { "stepIndex": 115, "sourceFile": "helix_bc.ngc", "line": 16, "statement": "g0b#c# ;exercise b,c", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-bc-orient", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 24, "motionType": "rapid", "feed": 2100, "startJoint": { "x": 10, "y": -20, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": 10, "y": -20, "z": 10, "b": 20, "c": 45 }, "startTcp": { "x": 10, "y": -20, "z": 10 }, "endTcp": { "x": 10, "y": -20, "z": 10 }, "endToolAxis": { "i": 0.24184476264797528, "j": 0.24184476264797522, "k": 0.9396926207859084 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 55, "notes": [] } }, { "stepIndex": 116, "sourceFile": "helix_bc.ngc", "line": 17, "statement": "f# g2i#z# p# ;helix", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "feed-helix", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 25, "motionType": "arc", "feed": 1000, "startJoint": { "x": 10, "y": -20, "z": 10, "b": 20, "c": 45 }, "endJoint": { "x": 10, "y": -20, "z": 5, "b": 20, "c": 45 }, "startTcp": { "x": 10, "y": -20, "z": 10 }, "endTcp": { "x": 10, "y": -20, "z": 5 }, "endToolAxis": { "i": 0.24184476264797528, "j": 0.24184476264797522, "k": 0.9396926207859084 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 1000, "actualMmPerMin": 1000, "overridePercent": 100 }, "cutting": { "active": true, "cuttingSpeedMmPerMin": 1000 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 56, "notes": [] } }, { "stepIndex": 117, "sourceFile": "helix_bc.ngc", "line": 18, "statement": "M429 ;Identity kinematics", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-identity", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "identity", "code": "M429" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 1000, "actualMmPerMin": 1000, "overridePercent": 100 }, "cutting": { "active": true, "cuttingSpeedMmPerMin": 1000 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 1000, "actualMmPerMin": 1000, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 57, "notes": [] } }, { "stepIndex": 118, "sourceFile": "helix_bc.ngc", "line": 19, "statement": "g0 x0 y0 z# b0 c0 ;return to start", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-return-to-start", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 26, "motionType": "rapid", "feed": 2100, "startJoint": { "x": 10, "y": -20, "z": 5, "b": 20, "c": 45 }, "endJoint": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": 10, "y": -20, "z": 5 }, "endTcp": { "x": 0, "y": 0, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 1000, "actualMmPerMin": 1000, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 58, "notes": [] } }, { "stepIndex": 119, "sourceFile": "helix_bc.ngc", "line": 20, "statement": "g0 x[#<_x> + #] ;adjust restore", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-radius-restore", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 27, "motionType": "rapid", "feed": 2100, "startJoint": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": 10, "y": 0, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": 0, "y": 0, "z": 10 }, "endTcp": { "x": 10, "y": 0, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 59, "notes": [] } }, { "stepIndex": 120, "sourceFile": "helix_bc.ngc", "line": 21, "statement": "M428 ;XYZBC", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-tcp-xyzbc", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "tcp-xyzbc", "code": "M428" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 60, "notes": [] } }, { "stepIndex": 121, "sourceFile": "helix_bc.ngc", "line": 22, "statement": "oendsub", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": true, "sourceLineKind": "subroutine-boundary", "result": { "status": "ok", "operation": "subroutine-exit", "sourceLineKind": "subroutine-boundary", "executed": true, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 122, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 42, "statement": ";final position", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": false, "sourceLineKind": "comment", "result": { "status": "ok", "operation": "comment-final-position", "sourceLineKind": "comment", "executed": false, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 123, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 43, "statement": "M429 ;Identity kinematics", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-identity", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "identity", "code": "M429" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 61, "notes": [] } }, { "stepIndex": 124, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 44, "statement": "g53 g0 x0y0 z# ;MACHINE coordinates", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-final-machine-reset", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 28, "motionType": "rapid", "feed": 2100, "startJoint": { "x": 10, "y": 0, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": 10, "y": 0, "z": 10 }, "endTcp": { "x": 0, "y": 0, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 62, "notes": [] } }, { "stepIndex": 125, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 45, "statement": "g10l20p0 x0y0 z# ;new g54", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "offset", "result": { "status": "ok", "operation": "set-g54-offset", "sourceLineKind": "offset", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "workOffsetAfter": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "modalChange": { "coordinateSystem": "G54", "code": "G10 L20 P0" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 63, "notes": [] } }, { "stepIndex": 126, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 47, "statement": "oendsub", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "subroutine-boundary", "result": { "status": "ok", "operation": "subroutine-exit", "sourceLineKind": "subroutine-boundary", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 127, "sourceFile": "xyzbc_switchkins.ngc", "line": 3, "statement": "m2", "callDepth": 0, "callStack": [], "executed": true, "sourceLineKind": "program-end", "result": { "status": "ok", "operation": "program-end", "sourceLineKind": "program-end", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "program": "ended", "code": "M2" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } } ], "summary": { "motionStepCount": 29, "switchkinsStepCount": 21, "parameterAssignmentStepCount": 41, "workOffsetStepCount": 9, "callStepCount": 5, "noMotionStepCount": 99, "finalJoint": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "finalKinematics": "identity" }, "semanticBoundary": "complete_gcode_execution_process_expanded_from_linuxcnc_xyzbc_trt_sources" }, "currentVelocity": 0, "operatorMessage": "task/HAL machine power on", "pauseButton": { "action": "pause-resume", "paused": "false", "title": "Pause program", "ariaPressed": "false" }, "canvasDataset": { "width": 383, "height": 572, "threeToolAxis": "{\"x\":0,\"y\":0,\"z\":1}", "threeToolGlyphAxis": "{\"x\":0,\"y\":0,\"z\":1}" }, "canvasToolhead": { "x": 0, "y": 0, "z": 0.01 }, "canvasVismachPins": null, "programPaneDataset": { "region": "program", "liveSourceFile": "xyzbc_switchkins_sub.ngc", "liveSourceLine": "16", "liveSampleIndex": "0", "liveExecutedSamples": "1", "gcodeExecutionStatus": "ok", "gcodeExecutionStepCount": "128", "gcodeMotionStepCount": "29", "gcodeParameterStepCount": "41", "gcodeCallDepth": "1" }, "processMonitorDataset": { "linuxcncProcessMonitor": "", "sourceMode": "linuxcnc-task-motion-hal-wasm", "taskHalReady": "true", "activeLine": "1", "liveSourceFile": "xyzbc_switchkins_sub.ngc", "liveSourceLine": "16", "liveSampleIndex": "0" } }, "after": { "runState": "idle", "taskState": "on", "powerOn": true, "estopActive": false, "allHomed": true, "mode": "manual", "interpState": "idle", "taskPaused": false, "motionPaused": false, "activeLine": 16, "sampleIndex": 0, "programExecutionSourceMode": "linuxcnc-task-motion-hal-wasm", "programUiExecution": { "apiName": "web-rtcp-5axis-ui-gcode-live-execution", "status": "idle", "source": "programAxisPreviewPath.samples", "samplePeriodMs": 50, "sampleIndex": 0, "sampleCount": 1300, "executedSampleCount": 1, "timeMs": 0, "activeProgram": "configs/sim/axis/vismach/5axis/table-rotary-tilting/demos/xyzbc_switchkins.ngc", "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 16, "statement": "g53 g0 x0y0 z# b0 c0 ; quadrant I", "operation": "rapid-machine-reset", "executionIndex": 2, "gcodeStepIndex": 16, "segmentIndex": 0, "motionType": "rapid", "activeKinematics": "identity", "joint": { "x": 0, "y": 0, "z": 10, "a": 0, "b": 0, "c": 0 }, "tcp": { "x": 0, "y": 0, "z": 10 }, "toolAxis": { "i": 0, "j": 0, "k": 1 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "machineState": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "semanticBoundary": "ui_updates_from_real_expanded_linuxcnc_gcode_sample_stream" }, "currentVelocity": 0, "operatorMessage": "task/HAL machine homed" } }, { "label": "自动模式", "selector": "[data-action=\"toggle-auto-manual\"]", "at": "2026-07-09T17:32:14.618Z", "elapsedMs": 710, "before": { "machineProfile": "xyzbc-trt", "selectedGcodeSourceRel": "configs/sim/axis/vismach/5axis/table-rotary-tilting/demos/xyzbc_switchkins.ngc", "taskHalLoaded": true, "taskHalRuntimeReadiness": { "apiName": "web-rtcp-5axis-linuxcnc-task-hal-runtime-readiness", "loaded": true, "semanticBoundary": "linuxcnc_task_motion_hal_wasm_simulation_runtime", "sdkSemanticBoundary": "linuxcnc_task_motion_hal_wasm_phase4_minimal", "executionContext": "direct", "workerUrl": null, "taskRuntimeReady": true, "motionRuntimeReady": true, "halRuntimeReady": true, "halSyncReady": true, "nativeTaskReady": true, "nativeHalSyncReady": true, "hardwareDrive": false, "hostRealtimeKernel": false, "externalUserMProcessReady": false }, "runState": "idle", "taskState": "on", "powerOn": true, "estopActive": false, "allHomed": true, "mode": "manual", "interpState": "idle", "interpResumeState": "idle", "taskPaused": false, "motionPaused": false, "rtcpState": "off", "kinsType": "identity", "activeLine": 16, "programExecutionSourceMode": "linuxcnc-task-motion-hal-wasm", "programExecutionSampleIndex": 0, "programRuntimeFeedback": { "apiName": "web-rtcp-5axis-program-runtime-feedback", "sourceMode": "linuxcnc-task-motion-hal-wasm", "semanticBoundary": "linuxcnc_task_motion_hal_wasm_simulation_runtime", "sampleIndex": 0, "motionIndex": 0, "line": 1, "motionProgramLine": 1, "halProgramLine": 1, "activeLineSource": "emc-status", "activeLineHalSynced": true, "type": "TASK_MOTION", "paused": false, "timeSeconds": 0.05, "axisPose": { "x": 0, "y": 0, "z": 10, "a": 0, "b": 0, "c": 0 }, "currentVelocityMmPerMin": 0, "requestedVelocityMmPerMin": 0, "distanceToGo": 0, "dtg": { "x": 0, "y": 0, "z": 0 }, "queueDepth": 0, "activeDepth": 0, "cycle": 50, "taskCycle": 5, "halChangedPinCount": 0 }, "axisPose": { "x": 0, "y": 0, "z": 10, "a": 0, "b": 0, "c": 0 }, "dro": { "x": 0, "y": 0, "z": 10, "a": 0, "b": 0, "c": 0, "tcpX": 0, "tcpY": 0, "tcpZ": 10, "dtgX": 0, "dtgY": 0, "dtgZ": 0 }, "programUiExecution": { "apiName": "web-rtcp-5axis-ui-gcode-live-execution", "status": "idle", "source": "programAxisPreviewPath.samples", "samplePeriodMs": 50, "sampleIndex": 0, "sampleCount": 1300, "executedSampleCount": 1, "timeMs": 0, "activeProgram": "configs/sim/axis/vismach/5axis/table-rotary-tilting/demos/xyzbc_switchkins.ngc", "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 16, "statement": "g53 g0 x0y0 z# b0 c0 ; quadrant I", "operation": "rapid-machine-reset", "executionIndex": 2, "gcodeStepIndex": 16, "segmentIndex": 0, "motionType": "rapid", "activeKinematics": "identity", "joint": { "x": 0, "y": 0, "z": 10, "a": 0, "b": 0, "c": 0 }, "tcp": { "x": 0, "y": 0, "z": 10 }, "toolAxis": { "i": 0, "j": 0, "k": 1 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "machineState": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "semanticBoundary": "ui_updates_from_real_expanded_linuxcnc_gcode_sample_stream" }, "samplePeriodMs": 50, "sampleCount": 1300, "gcodeExecutionProcess": { "apiName": "linuxcnc-xyzbc-trt-gcode-complete-execution-process", "status": "ok", "program": "xyzbc_switchkins.ngc", "sourceFiles": [ { "sourceFile": "xyzbc_switchkins.ngc", "lineCount": 3 }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "lineCount": 41 }, { "sourceFile": "helix_bc.ngc", "lineCount": 21 } ], "executionStepCount": 128, "sourceLineCoverage": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 1, "statement": "; zmax zmin r frate n a b c dist", "sourceLineKind": "comment", "visitCount": 1, "producedMotionCount": 0, "operations": [ "comment" ] }, { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "statement": "o call [10] [5] [10][1000][3][0][20][45][20]", "sourceLineKind": "call", "visitCount": 1, "producedMotionCount": 0, "operations": [ "call-subroutine" ] }, { "sourceFile": "xyzbc_switchkins.ngc", "line": 3, "statement": "m2", "sourceLineKind": "mcode", "visitCount": 1, "producedMotionCount": 0, "operations": [ "program-end" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 1, "statement": "; ngcgui-compatible subroutine", "sourceLineKind": "comment", "visitCount": 1, "producedMotionCount": 0, "operations": [ "comment" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 2, "statement": "(info: helix in each quadrant at angles B,C)", "sourceLineKind": "comment", "visitCount": 1, "producedMotionCount": 0, "operations": [ "info-comment" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 3, "statement": "osub", "sourceLineKind": "subroutine-boundary", "visitCount": 1, "producedMotionCount": 0, "operations": [ "subroutine-enter" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 4, "statement": "# = #1 (=10)", "sourceLineKind": "assignment", "visitCount": 1, "producedMotionCount": 0, "operations": [ "parameter-assignment" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 5, "statement": "# = #2 (= 5)", "sourceLineKind": "assignment", "visitCount": 1, "producedMotionCount": 0, "operations": [ "parameter-assignment" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 6, "statement": "# = #3 (=10 radius)", "sourceLineKind": "assignment", "visitCount": 1, "producedMotionCount": 0, "operations": [ "parameter-assignment" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 7, "statement": "# = #4 (=1000 feedrate)", "sourceLineKind": "assignment", "visitCount": 1, "producedMotionCount": 0, "operations": [ "parameter-assignment" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 8, "statement": "# = #5 (=3 n circles)", "sourceLineKind": "assignment", "visitCount": 1, "producedMotionCount": 0, "operations": [ "parameter-assignment" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 9, "statement": "# = #6 (=0 A angle NA)", "sourceLineKind": "assignment", "visitCount": 1, "producedMotionCount": 0, "operations": [ "parameter-assignment" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 10, "statement": "# = #7 (=30 B angle)", "sourceLineKind": "assignment", "visitCount": 1, "producedMotionCount": 0, "operations": [ "parameter-assignment" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 11, "statement": "# = #8 (=45 C angle)", "sourceLineKind": "assignment", "visitCount": 1, "producedMotionCount": 0, "operations": [ "parameter-assignment" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 12, "statement": "# = #9 (=20 distance)", "sourceLineKind": "assignment", "visitCount": 1, "producedMotionCount": 0, "operations": [ "parameter-assignment" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 14, "statement": "; quadrant I", "sourceLineKind": "comment", "visitCount": 1, "producedMotionCount": 0, "operations": [ "comment-quadrant-I" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 15, "statement": "M429 ;Identity kinematics", "sourceLineKind": "mcode", "visitCount": 1, "producedMotionCount": 0, "operations": [ "switchkins-identity" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 16, "statement": "g53 g0 x0y0 z# b0 c0 ;MACHINE coordinates", "sourceLineKind": "motion", "visitCount": 1, "producedMotionCount": 1, "operations": [ "rapid-machine-reset" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 17, "statement": "g10l20p0 x0y0 z# b0 c0 ;new g54", "sourceLineKind": "offset", "visitCount": 1, "producedMotionCount": 0, "operations": [ "set-g54-offset" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 18, "statement": "g0 x+# y+# z# ;move to pattern center position", "sourceLineKind": "motion", "visitCount": 1, "producedMotionCount": 1, "operations": [ "rapid-to-quadrant-center" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "statement": "o call [#][#][#][#][#][#][#][#]", "sourceLineKind": "call", "visitCount": 1, "producedMotionCount": 0, "operations": [ "call-subroutine" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 21, "statement": "; quadrant II", "sourceLineKind": "comment", "visitCount": 1, "producedMotionCount": 0, "operations": [ "comment-quadrant-II" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 22, "statement": "M429 ;Identity kinematics", "sourceLineKind": "mcode", "visitCount": 1, "producedMotionCount": 0, "operations": [ "switchkins-identity" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 23, "statement": "g53 g0 x0y0 z# b0 c0", "sourceLineKind": "motion", "visitCount": 1, "producedMotionCount": 1, "operations": [ "rapid-machine-reset" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 24, "statement": "g10l20p0 x0y0 z# b0 c0", "sourceLineKind": "offset", "visitCount": 1, "producedMotionCount": 0, "operations": [ "set-g54-offset" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 25, "statement": "g0 x-# y+# z#", "sourceLineKind": "motion", "visitCount": 1, "producedMotionCount": 1, "operations": [ "rapid-to-quadrant-center" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "statement": "o call [#][#][#][#][#][#][#][#]", "sourceLineKind": "call", "visitCount": 1, "producedMotionCount": 0, "operations": [ "call-subroutine" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 28, "statement": "; quadrant III", "sourceLineKind": "comment", "visitCount": 1, "producedMotionCount": 0, "operations": [ "comment-quadrant-III" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 29, "statement": "M429 ;Identity kinematics", "sourceLineKind": "mcode", "visitCount": 1, "producedMotionCount": 0, "operations": [ "switchkins-identity" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 30, "statement": "g53 g0 x0y0 z# b0 c0", "sourceLineKind": "motion", "visitCount": 1, "producedMotionCount": 1, "operations": [ "rapid-machine-reset" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 31, "statement": "g10l20p0 x0y0 z# b0 c0", "sourceLineKind": "offset", "visitCount": 1, "producedMotionCount": 0, "operations": [ "set-g54-offset" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 32, "statement": "g0 x-# y-# z#", "sourceLineKind": "motion", "visitCount": 1, "producedMotionCount": 1, "operations": [ "rapid-to-quadrant-center" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "statement": "o call [#][#][#][#][#][#][#][#]", "sourceLineKind": "call", "visitCount": 1, "producedMotionCount": 0, "operations": [ "call-subroutine" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 35, "statement": "; quadrant IV", "sourceLineKind": "comment", "visitCount": 1, "producedMotionCount": 0, "operations": [ "comment-quadrant-IV" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 36, "statement": "M429 ;Identity kinematics", "sourceLineKind": "mcode", "visitCount": 1, "producedMotionCount": 0, "operations": [ "switchkins-identity" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 37, "statement": "g53 g0 x0y0 z# b0 c0", "sourceLineKind": "motion", "visitCount": 1, "producedMotionCount": 1, "operations": [ "rapid-machine-reset" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 38, "statement": "g10l20p0 x0y0 z# b0 c0", "sourceLineKind": "offset", "visitCount": 1, "producedMotionCount": 0, "operations": [ "set-g54-offset" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 39, "statement": "g0 x+# y-# z#", "sourceLineKind": "motion", "visitCount": 1, "producedMotionCount": 1, "operations": [ "rapid-to-quadrant-center" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "statement": "o call [#][#][#][#][#][#][#][#]", "sourceLineKind": "call", "visitCount": 1, "producedMotionCount": 0, "operations": [ "call-subroutine" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 42, "statement": ";final position", "sourceLineKind": "comment", "visitCount": 1, "producedMotionCount": 0, "operations": [ "comment-final-position" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 43, "statement": "M429 ;Identity kinematics", "sourceLineKind": "mcode", "visitCount": 1, "producedMotionCount": 0, "operations": [ "switchkins-identity" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 44, "statement": "g53 g0 x0y0 z# ;MACHINE coordinates", "sourceLineKind": "motion", "visitCount": 1, "producedMotionCount": 1, "operations": [ "rapid-final-machine-reset" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 45, "statement": "g10l20p0 x0y0 z# ;new g54", "sourceLineKind": "offset", "visitCount": 1, "producedMotionCount": 0, "operations": [ "set-g54-offset" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 47, "statement": "oendsub", "sourceLineKind": "subroutine-boundary", "visitCount": 1, "producedMotionCount": 0, "operations": [ "subroutine-exit" ] }, { "sourceFile": "helix_bc.ngc", "line": 1, "statement": "; helix using switchkins (xyzbc) b,c angles", "sourceLineKind": "comment", "visitCount": 4, "producedMotionCount": 0, "operations": [ "comment" ] }, { "sourceFile": "helix_bc.ngc", "line": 2, "statement": "osub", "sourceLineKind": "subroutine-boundary", "visitCount": 4, "producedMotionCount": 0, "operations": [ "subroutine-enter" ] }, { "sourceFile": "helix_bc.ngc", "line": 3, "statement": "# = #1 (=10)", "sourceLineKind": "assignment", "visitCount": 4, "producedMotionCount": 0, "operations": [ "parameter-assignment" ] }, { "sourceFile": "helix_bc.ngc", "line": 4, "statement": "# = #2 (= 5)", "sourceLineKind": "assignment", "visitCount": 4, "producedMotionCount": 0, "operations": [ "parameter-assignment" ] }, { "sourceFile": "helix_bc.ngc", "line": 5, "statement": "# = #3 (=10)", "sourceLineKind": "assignment", "visitCount": 4, "producedMotionCount": 0, "operations": [ "parameter-assignment" ] }, { "sourceFile": "helix_bc.ngc", "line": 6, "statement": "# = #4 (=1000)", "sourceLineKind": "assignment", "visitCount": 4, "producedMotionCount": 0, "operations": [ "parameter-assignment" ] }, { "sourceFile": "helix_bc.ngc", "line": 7, "statement": "# = #5 (=3)", "sourceLineKind": "assignment", "visitCount": 4, "producedMotionCount": 0, "operations": [ "parameter-assignment" ] }, { "sourceFile": "helix_bc.ngc", "line": 8, "statement": "# = #6 (=0 NA)", "sourceLineKind": "assignment", "visitCount": 4, "producedMotionCount": 0, "operations": [ "parameter-assignment" ] }, { "sourceFile": "helix_bc.ngc", "line": 9, "statement": "# = #7 (=45)", "sourceLineKind": "assignment", "visitCount": 4, "producedMotionCount": 0, "operations": [ "parameter-assignment" ] }, { "sourceFile": "helix_bc.ngc", "line": 10, "statement": "# = #8 (=20)", "sourceLineKind": "assignment", "visitCount": 4, "producedMotionCount": 0, "operations": [ "parameter-assignment" ] }, { "sourceFile": "helix_bc.ngc", "line": 12, "statement": "M429 ;Identity kinematics", "sourceLineKind": "mcode", "visitCount": 4, "producedMotionCount": 0, "operations": [ "switchkins-identity" ] }, { "sourceFile": "helix_bc.ngc", "line": 13, "statement": "g0 x[#<_x> - #] ;adjust for radius", "sourceLineKind": "motion", "visitCount": 4, "producedMotionCount": 4, "operations": [ "rapid-radius-adjust" ] }, { "sourceFile": "helix_bc.ngc", "line": 14, "statement": "g10l20p0 x0y0 z# b0 c0 ;new g54", "sourceLineKind": "offset", "visitCount": 4, "producedMotionCount": 0, "operations": [ "set-g54-offset" ] }, { "sourceFile": "helix_bc.ngc", "line": 15, "statement": "M428 ;XYZBC", "sourceLineKind": "mcode", "visitCount": 4, "producedMotionCount": 0, "operations": [ "switchkins-tcp-xyzbc" ] }, { "sourceFile": "helix_bc.ngc", "line": 16, "statement": "g0b#c# ;exercise b,c", "sourceLineKind": "motion", "visitCount": 4, "producedMotionCount": 4, "operations": [ "rapid-bc-orient" ] }, { "sourceFile": "helix_bc.ngc", "line": 17, "statement": "f# g2i#z# p# ;helix", "sourceLineKind": "motion", "visitCount": 4, "producedMotionCount": 4, "operations": [ "feed-helix" ] }, { "sourceFile": "helix_bc.ngc", "line": 18, "statement": "M429 ;Identity kinematics", "sourceLineKind": "mcode", "visitCount": 4, "producedMotionCount": 0, "operations": [ "switchkins-identity" ] }, { "sourceFile": "helix_bc.ngc", "line": 19, "statement": "g0 x0 y0 z# b0 c0 ;return to start", "sourceLineKind": "motion", "visitCount": 4, "producedMotionCount": 4, "operations": [ "rapid-return-to-start" ] }, { "sourceFile": "helix_bc.ngc", "line": 20, "statement": "g0 x[#<_x> + #] ;adjust restore", "sourceLineKind": "motion", "visitCount": 4, "producedMotionCount": 4, "operations": [ "rapid-radius-restore" ] }, { "sourceFile": "helix_bc.ngc", "line": 21, "statement": "M428 ;XYZBC", "sourceLineKind": "mcode", "visitCount": 4, "producedMotionCount": 0, "operations": [ "switchkins-tcp-xyzbc" ] }, { "sourceFile": "helix_bc.ngc", "line": 22, "statement": "oendsub", "sourceLineKind": "subroutine-boundary", "visitCount": 4, "producedMotionCount": 0, "operations": [ "subroutine-exit" ] } ], "executionSteps": [ { "stepIndex": 0, "sourceFile": "xyzbc_switchkins.ngc", "line": 1, "statement": "; zmax zmin r frate n a b c dist", "callDepth": 0, "callStack": [], "executed": false, "sourceLineKind": "comment", "result": { "status": "ok", "operation": "comment", "sourceLineKind": "comment", "executed": false, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 1, "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "statement": "o call [10] [5] [10][1000][3][0][20][45][20]", "callDepth": 0, "callStack": [], "executed": true, "sourceLineKind": "call", "result": { "status": "ok", "operation": "call-subroutine", "sourceLineKind": "call", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 0, "notes": [] } }, { "stepIndex": 2, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 1, "statement": "; ngcgui-compatible subroutine", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": false, "sourceLineKind": "comment", "result": { "status": "ok", "operation": "comment", "sourceLineKind": "comment", "executed": false, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 3, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 2, "statement": "(info: helix in each quadrant at angles B,C)", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": false, "sourceLineKind": "comment", "result": { "status": "ok", "operation": "info-comment", "sourceLineKind": "comment", "executed": false, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 4, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 3, "statement": "osub", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "subroutine-boundary", "result": { "status": "ok", "operation": "subroutine-enter", "sourceLineKind": "subroutine-boundary", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 5, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 4, "statement": "# = #1 (=10)", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": {}, "parametersChanged": { "zmax": 10 }, "parametersAfter": { "zmax": 10 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 6, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 5, "statement": "# = #2 (= 5)", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10 }, "parametersChanged": { "zmin": 5 }, "parametersAfter": { "zmax": 10, "zmin": 5 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 7, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 6, "statement": "# = #3 (=10 radius)", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5 }, "parametersChanged": { "r": 10 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 8, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 7, "statement": "# = #4 (=1000 feedrate)", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10 }, "parametersChanged": { "frate": 1000 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 9, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 8, "statement": "# = #5 (=3 n circles)", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000 }, "parametersChanged": { "n": 3 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 10, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 9, "statement": "# = #6 (=0 A angle NA)", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3 }, "parametersChanged": { "a": 0 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 11, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 10, "statement": "# = #7 (=30 B angle)", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0 }, "parametersChanged": { "b": 20 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 12, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 11, "statement": "# = #8 (=45 C angle)", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20 }, "parametersChanged": { "c": 45 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 13, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 12, "statement": "# = #9 (=20 distance)", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45 }, "parametersChanged": { "dist": 20 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 14, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 14, "statement": "; quadrant I", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": false, "sourceLineKind": "comment", "result": { "status": "ok", "operation": "comment-quadrant-I", "sourceLineKind": "comment", "executed": false, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 15, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 15, "statement": "M429 ;Identity kinematics", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-identity", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "identity", "code": "M429" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 1, "notes": [] } }, { "stepIndex": 16, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 16, "statement": "g53 g0 x0y0 z# b0 c0 ;MACHINE coordinates", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-machine-reset", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 0, "motionType": "rapid", "feed": 2100, "startJoint": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": 0, "y": 0, "z": 10 }, "endTcp": { "x": 0, "y": 0, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 2, "notes": [] } }, { "stepIndex": 17, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 17, "statement": "g10l20p0 x0y0 z# b0 c0 ;new g54", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "offset", "result": { "status": "ok", "operation": "set-g54-offset", "sourceLineKind": "offset", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "workOffsetAfter": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "modalChange": { "coordinateSystem": "G54", "code": "G10 L20 P0" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 3, "notes": [] } }, { "stepIndex": 18, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 18, "statement": "g0 x+# y+# z# ;move to pattern center position", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-to-quadrant-center", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 1, "motionType": "rapid", "feed": 2100, "startJoint": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": 20, "y": 20, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": 0, "y": 0, "z": 10 }, "endTcp": { "x": 20, "y": 20, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 4, "notes": [] } }, { "stepIndex": 19, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "statement": "o call [#][#][#][#][#][#][#][#]", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "call", "result": { "status": "ok", "operation": "call-subroutine", "sourceLineKind": "call", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 5, "notes": [] } }, { "stepIndex": 20, "sourceFile": "helix_bc.ngc", "line": 1, "statement": "; helix using switchkins (xyzbc) b,c angles", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": false, "sourceLineKind": "comment", "result": { "status": "ok", "operation": "comment", "sourceLineKind": "comment", "executed": false, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 21, "sourceFile": "helix_bc.ngc", "line": 2, "statement": "osub", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": true, "sourceLineKind": "subroutine-boundary", "result": { "status": "ok", "operation": "subroutine-enter", "sourceLineKind": "subroutine-boundary", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 22, "sourceFile": "helix_bc.ngc", "line": 3, "statement": "# = #1 (=10)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "zmax": 10 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 23, "sourceFile": "helix_bc.ngc", "line": 4, "statement": "# = #2 (= 5)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "zmin": 5 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 24, "sourceFile": "helix_bc.ngc", "line": 5, "statement": "# = #3 (=10)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "r": 10 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 25, "sourceFile": "helix_bc.ngc", "line": 6, "statement": "# = #4 (=1000)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "frate": 1000 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 26, "sourceFile": "helix_bc.ngc", "line": 7, "statement": "# = #5 (=3)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "n": 3 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 27, "sourceFile": "helix_bc.ngc", "line": 8, "statement": "# = #6 (=0 NA)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "a": 0 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 28, "sourceFile": "helix_bc.ngc", "line": 9, "statement": "# = #7 (=45)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "b": 20 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 29, "sourceFile": "helix_bc.ngc", "line": 10, "statement": "# = #8 (=20)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "c": 45 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 30, "sourceFile": "helix_bc.ngc", "line": 12, "statement": "M429 ;Identity kinematics", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-identity", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "identity", "code": "M429" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 6, "notes": [] } }, { "stepIndex": 31, "sourceFile": "helix_bc.ngc", "line": 13, "statement": "g0 x[#<_x> - #] ;adjust for radius", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-radius-adjust", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 2, "motionType": "rapid", "feed": 2100, "startJoint": { "x": 20, "y": 20, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": 10, "y": 20, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": 20, "y": 20, "z": 10 }, "endTcp": { "x": 10, "y": 20, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 7, "notes": [] } }, { "stepIndex": 32, "sourceFile": "helix_bc.ngc", "line": 14, "statement": "g10l20p0 x0y0 z# b0 c0 ;new g54", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": true, "sourceLineKind": "offset", "result": { "status": "ok", "operation": "set-g54-offset", "sourceLineKind": "offset", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "workOffsetAfter": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "modalChange": { "coordinateSystem": "G54", "code": "G10 L20 P0" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 8, "notes": [] } }, { "stepIndex": 33, "sourceFile": "helix_bc.ngc", "line": 15, "statement": "M428 ;XYZBC", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-tcp-xyzbc", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "tcp-xyzbc", "code": "M428" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 9, "notes": [] } }, { "stepIndex": 34, "sourceFile": "helix_bc.ngc", "line": 16, "statement": "g0b#c# ;exercise b,c", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-bc-orient", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 3, "motionType": "rapid", "feed": 2100, "startJoint": { "x": 10, "y": 20, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": 10, "y": 20, "z": 10, "b": 20, "c": 45 }, "startTcp": { "x": 10, "y": 20, "z": 10 }, "endTcp": { "x": 10, "y": 20, "z": 10 }, "endToolAxis": { "i": 0.24184476264797528, "j": 0.24184476264797522, "k": 0.9396926207859084 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 10, "notes": [] } }, { "stepIndex": 35, "sourceFile": "helix_bc.ngc", "line": 17, "statement": "f# g2i#z# p# ;helix", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "feed-helix", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 4, "motionType": "arc", "feed": 1000, "startJoint": { "x": 10, "y": 20, "z": 10, "b": 20, "c": 45 }, "endJoint": { "x": 10, "y": 20, "z": 5, "b": 20, "c": 45 }, "startTcp": { "x": 10, "y": 20, "z": 10 }, "endTcp": { "x": 10, "y": 20, "z": 5 }, "endToolAxis": { "i": 0.24184476264797528, "j": 0.24184476264797522, "k": 0.9396926207859084 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 1000, "actualMmPerMin": 1000, "overridePercent": 100 }, "cutting": { "active": true, "cuttingSpeedMmPerMin": 1000 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 11, "notes": [] } }, { "stepIndex": 36, "sourceFile": "helix_bc.ngc", "line": 18, "statement": "M429 ;Identity kinematics", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-identity", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "identity", "code": "M429" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 1000, "actualMmPerMin": 1000, "overridePercent": 100 }, "cutting": { "active": true, "cuttingSpeedMmPerMin": 1000 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 1000, "actualMmPerMin": 1000, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 12, "notes": [] } }, { "stepIndex": 37, "sourceFile": "helix_bc.ngc", "line": 19, "statement": "g0 x0 y0 z# b0 c0 ;return to start", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-return-to-start", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 5, "motionType": "rapid", "feed": 2100, "startJoint": { "x": 10, "y": 20, "z": 5, "b": 20, "c": 45 }, "endJoint": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": 10, "y": 20, "z": 5 }, "endTcp": { "x": 0, "y": 0, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 1000, "actualMmPerMin": 1000, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 13, "notes": [] } }, { "stepIndex": 38, "sourceFile": "helix_bc.ngc", "line": 20, "statement": "g0 x[#<_x> + #] ;adjust restore", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-radius-restore", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 6, "motionType": "rapid", "feed": 2100, "startJoint": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": 10, "y": 0, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": 0, "y": 0, "z": 10 }, "endTcp": { "x": 10, "y": 0, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 14, "notes": [] } }, { "stepIndex": 39, "sourceFile": "helix_bc.ngc", "line": 21, "statement": "M428 ;XYZBC", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-tcp-xyzbc", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "tcp-xyzbc", "code": "M428" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 15, "notes": [] } }, { "stepIndex": 40, "sourceFile": "helix_bc.ngc", "line": 22, "statement": "oendsub", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": true, "sourceLineKind": "subroutine-boundary", "result": { "status": "ok", "operation": "subroutine-exit", "sourceLineKind": "subroutine-boundary", "executed": true, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 41, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 21, "statement": "; quadrant II", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": false, "sourceLineKind": "comment", "result": { "status": "ok", "operation": "comment-quadrant-II", "sourceLineKind": "comment", "executed": false, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 42, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 22, "statement": "M429 ;Identity kinematics", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-identity", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "identity", "code": "M429" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 16, "notes": [] } }, { "stepIndex": 43, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 23, "statement": "g53 g0 x0y0 z# b0 c0", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-machine-reset", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 7, "motionType": "rapid", "feed": 2100, "startJoint": { "x": 10, "y": 0, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": 10, "y": 0, "z": 10 }, "endTcp": { "x": 0, "y": 0, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 17, "notes": [] } }, { "stepIndex": 44, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 24, "statement": "g10l20p0 x0y0 z# b0 c0", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "offset", "result": { "status": "ok", "operation": "set-g54-offset", "sourceLineKind": "offset", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "workOffsetAfter": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "modalChange": { "coordinateSystem": "G54", "code": "G10 L20 P0" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 18, "notes": [] } }, { "stepIndex": 45, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 25, "statement": "g0 x-# y+# z#", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-to-quadrant-center", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 8, "motionType": "rapid", "feed": 2100, "startJoint": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": -20, "y": 20, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": 0, "y": 0, "z": 10 }, "endTcp": { "x": -20, "y": 20, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 19, "notes": [] } }, { "stepIndex": 46, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "statement": "o call [#][#][#][#][#][#][#][#]", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "call", "result": { "status": "ok", "operation": "call-subroutine", "sourceLineKind": "call", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 20, "notes": [] } }, { "stepIndex": 47, "sourceFile": "helix_bc.ngc", "line": 1, "statement": "; helix using switchkins (xyzbc) b,c angles", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": false, "sourceLineKind": "comment", "result": { "status": "ok", "operation": "comment", "sourceLineKind": "comment", "executed": false, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 48, "sourceFile": "helix_bc.ngc", "line": 2, "statement": "osub", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": true, "sourceLineKind": "subroutine-boundary", "result": { "status": "ok", "operation": "subroutine-enter", "sourceLineKind": "subroutine-boundary", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 49, "sourceFile": "helix_bc.ngc", "line": 3, "statement": "# = #1 (=10)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "zmax": 10 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 50, "sourceFile": "helix_bc.ngc", "line": 4, "statement": "# = #2 (= 5)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "zmin": 5 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 51, "sourceFile": "helix_bc.ngc", "line": 5, "statement": "# = #3 (=10)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "r": 10 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 52, "sourceFile": "helix_bc.ngc", "line": 6, "statement": "# = #4 (=1000)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "frate": 1000 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 53, "sourceFile": "helix_bc.ngc", "line": 7, "statement": "# = #5 (=3)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "n": 3 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 54, "sourceFile": "helix_bc.ngc", "line": 8, "statement": "# = #6 (=0 NA)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "a": 0 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 55, "sourceFile": "helix_bc.ngc", "line": 9, "statement": "# = #7 (=45)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "b": 20 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 56, "sourceFile": "helix_bc.ngc", "line": 10, "statement": "# = #8 (=20)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "c": 45 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 57, "sourceFile": "helix_bc.ngc", "line": 12, "statement": "M429 ;Identity kinematics", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-identity", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "identity", "code": "M429" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 21, "notes": [] } }, { "stepIndex": 58, "sourceFile": "helix_bc.ngc", "line": 13, "statement": "g0 x[#<_x> - #] ;adjust for radius", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-radius-adjust", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 9, "motionType": "rapid", "feed": 2100, "startJoint": { "x": -20, "y": 20, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": -30, "y": 20, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": -20, "y": 20, "z": 10 }, "endTcp": { "x": -30, "y": 20, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 22, "notes": [] } }, { "stepIndex": 59, "sourceFile": "helix_bc.ngc", "line": 14, "statement": "g10l20p0 x0y0 z# b0 c0 ;new g54", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": true, "sourceLineKind": "offset", "result": { "status": "ok", "operation": "set-g54-offset", "sourceLineKind": "offset", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "workOffsetAfter": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "modalChange": { "coordinateSystem": "G54", "code": "G10 L20 P0" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 23, "notes": [] } }, { "stepIndex": 60, "sourceFile": "helix_bc.ngc", "line": 15, "statement": "M428 ;XYZBC", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-tcp-xyzbc", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "tcp-xyzbc", "code": "M428" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 24, "notes": [] } }, { "stepIndex": 61, "sourceFile": "helix_bc.ngc", "line": 16, "statement": "g0b#c# ;exercise b,c", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-bc-orient", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 10, "motionType": "rapid", "feed": 2100, "startJoint": { "x": -30, "y": 20, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": -30, "y": 20, "z": 10, "b": 20, "c": 45 }, "startTcp": { "x": -30, "y": 20, "z": 10 }, "endTcp": { "x": -30, "y": 20, "z": 10 }, "endToolAxis": { "i": 0.24184476264797528, "j": 0.24184476264797522, "k": 0.9396926207859084 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 25, "notes": [] } }, { "stepIndex": 62, "sourceFile": "helix_bc.ngc", "line": 17, "statement": "f# g2i#z# p# ;helix", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "feed-helix", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 11, "motionType": "arc", "feed": 1000, "startJoint": { "x": -30, "y": 20, "z": 10, "b": 20, "c": 45 }, "endJoint": { "x": -30, "y": 20, "z": 5, "b": 20, "c": 45 }, "startTcp": { "x": -30, "y": 20, "z": 10 }, "endTcp": { "x": -30, "y": 20, "z": 5 }, "endToolAxis": { "i": 0.24184476264797528, "j": 0.24184476264797522, "k": 0.9396926207859084 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 1000, "actualMmPerMin": 1000, "overridePercent": 100 }, "cutting": { "active": true, "cuttingSpeedMmPerMin": 1000 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 26, "notes": [] } }, { "stepIndex": 63, "sourceFile": "helix_bc.ngc", "line": 18, "statement": "M429 ;Identity kinematics", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-identity", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "identity", "code": "M429" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 1000, "actualMmPerMin": 1000, "overridePercent": 100 }, "cutting": { "active": true, "cuttingSpeedMmPerMin": 1000 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 1000, "actualMmPerMin": 1000, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 27, "notes": [] } }, { "stepIndex": 64, "sourceFile": "helix_bc.ngc", "line": 19, "statement": "g0 x0 y0 z# b0 c0 ;return to start", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-return-to-start", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 12, "motionType": "rapid", "feed": 2100, "startJoint": { "x": -30, "y": 20, "z": 5, "b": 20, "c": 45 }, "endJoint": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": -30, "y": 20, "z": 5 }, "endTcp": { "x": 0, "y": 0, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 1000, "actualMmPerMin": 1000, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 28, "notes": [] } }, { "stepIndex": 65, "sourceFile": "helix_bc.ngc", "line": 20, "statement": "g0 x[#<_x> + #] ;adjust restore", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-radius-restore", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 13, "motionType": "rapid", "feed": 2100, "startJoint": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": 10, "y": 0, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": 0, "y": 0, "z": 10 }, "endTcp": { "x": 10, "y": 0, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 29, "notes": [] } }, { "stepIndex": 66, "sourceFile": "helix_bc.ngc", "line": 21, "statement": "M428 ;XYZBC", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-tcp-xyzbc", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "tcp-xyzbc", "code": "M428" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 30, "notes": [] } }, { "stepIndex": 67, "sourceFile": "helix_bc.ngc", "line": 22, "statement": "oendsub", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": true, "sourceLineKind": "subroutine-boundary", "result": { "status": "ok", "operation": "subroutine-exit", "sourceLineKind": "subroutine-boundary", "executed": true, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 68, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 28, "statement": "; quadrant III", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": false, "sourceLineKind": "comment", "result": { "status": "ok", "operation": "comment-quadrant-III", "sourceLineKind": "comment", "executed": false, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 69, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 29, "statement": "M429 ;Identity kinematics", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-identity", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "identity", "code": "M429" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 31, "notes": [] } }, { "stepIndex": 70, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 30, "statement": "g53 g0 x0y0 z# b0 c0", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-machine-reset", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 14, "motionType": "rapid", "feed": 2100, "startJoint": { "x": 10, "y": 0, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": 10, "y": 0, "z": 10 }, "endTcp": { "x": 0, "y": 0, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 32, "notes": [] } }, { "stepIndex": 71, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 31, "statement": "g10l20p0 x0y0 z# b0 c0", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "offset", "result": { "status": "ok", "operation": "set-g54-offset", "sourceLineKind": "offset", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "workOffsetAfter": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "modalChange": { "coordinateSystem": "G54", "code": "G10 L20 P0" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 33, "notes": [] } }, { "stepIndex": 72, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 32, "statement": "g0 x-# y-# z#", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-to-quadrant-center", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 15, "motionType": "rapid", "feed": 2100, "startJoint": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": -20, "y": -20, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": 0, "y": 0, "z": 10 }, "endTcp": { "x": -20, "y": -20, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 34, "notes": [] } }, { "stepIndex": 73, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "statement": "o call [#][#][#][#][#][#][#][#]", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "call", "result": { "status": "ok", "operation": "call-subroutine", "sourceLineKind": "call", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 35, "notes": [] } }, { "stepIndex": 74, "sourceFile": "helix_bc.ngc", "line": 1, "statement": "; helix using switchkins (xyzbc) b,c angles", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": false, "sourceLineKind": "comment", "result": { "status": "ok", "operation": "comment", "sourceLineKind": "comment", "executed": false, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 75, "sourceFile": "helix_bc.ngc", "line": 2, "statement": "osub", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": true, "sourceLineKind": "subroutine-boundary", "result": { "status": "ok", "operation": "subroutine-enter", "sourceLineKind": "subroutine-boundary", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 76, "sourceFile": "helix_bc.ngc", "line": 3, "statement": "# = #1 (=10)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "zmax": 10 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 77, "sourceFile": "helix_bc.ngc", "line": 4, "statement": "# = #2 (= 5)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "zmin": 5 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 78, "sourceFile": "helix_bc.ngc", "line": 5, "statement": "# = #3 (=10)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "r": 10 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 79, "sourceFile": "helix_bc.ngc", "line": 6, "statement": "# = #4 (=1000)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "frate": 1000 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 80, "sourceFile": "helix_bc.ngc", "line": 7, "statement": "# = #5 (=3)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "n": 3 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 81, "sourceFile": "helix_bc.ngc", "line": 8, "statement": "# = #6 (=0 NA)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "a": 0 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 82, "sourceFile": "helix_bc.ngc", "line": 9, "statement": "# = #7 (=45)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "b": 20 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 83, "sourceFile": "helix_bc.ngc", "line": 10, "statement": "# = #8 (=20)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "c": 45 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 84, "sourceFile": "helix_bc.ngc", "line": 12, "statement": "M429 ;Identity kinematics", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-identity", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "identity", "code": "M429" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 36, "notes": [] } }, { "stepIndex": 85, "sourceFile": "helix_bc.ngc", "line": 13, "statement": "g0 x[#<_x> - #] ;adjust for radius", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-radius-adjust", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 16, "motionType": "rapid", "feed": 2100, "startJoint": { "x": -20, "y": -20, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": -30, "y": -20, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": -20, "y": -20, "z": 10 }, "endTcp": { "x": -30, "y": -20, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 37, "notes": [] } }, { "stepIndex": 86, "sourceFile": "helix_bc.ngc", "line": 14, "statement": "g10l20p0 x0y0 z# b0 c0 ;new g54", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": true, "sourceLineKind": "offset", "result": { "status": "ok", "operation": "set-g54-offset", "sourceLineKind": "offset", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "workOffsetAfter": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "modalChange": { "coordinateSystem": "G54", "code": "G10 L20 P0" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 38, "notes": [] } }, { "stepIndex": 87, "sourceFile": "helix_bc.ngc", "line": 15, "statement": "M428 ;XYZBC", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-tcp-xyzbc", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "tcp-xyzbc", "code": "M428" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 39, "notes": [] } }, { "stepIndex": 88, "sourceFile": "helix_bc.ngc", "line": 16, "statement": "g0b#c# ;exercise b,c", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-bc-orient", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 17, "motionType": "rapid", "feed": 2100, "startJoint": { "x": -30, "y": -20, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": -30, "y": -20, "z": 10, "b": 20, "c": 45 }, "startTcp": { "x": -30, "y": -20, "z": 10 }, "endTcp": { "x": -30, "y": -20, "z": 10 }, "endToolAxis": { "i": 0.24184476264797528, "j": 0.24184476264797522, "k": 0.9396926207859084 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 40, "notes": [] } }, { "stepIndex": 89, "sourceFile": "helix_bc.ngc", "line": 17, "statement": "f# g2i#z# p# ;helix", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "feed-helix", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 18, "motionType": "arc", "feed": 1000, "startJoint": { "x": -30, "y": -20, "z": 10, "b": 20, "c": 45 }, "endJoint": { "x": -30, "y": -20, "z": 5, "b": 20, "c": 45 }, "startTcp": { "x": -30, "y": -20, "z": 10 }, "endTcp": { "x": -30, "y": -20, "z": 5 }, "endToolAxis": { "i": 0.24184476264797528, "j": 0.24184476264797522, "k": 0.9396926207859084 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 1000, "actualMmPerMin": 1000, "overridePercent": 100 }, "cutting": { "active": true, "cuttingSpeedMmPerMin": 1000 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 41, "notes": [] } }, { "stepIndex": 90, "sourceFile": "helix_bc.ngc", "line": 18, "statement": "M429 ;Identity kinematics", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-identity", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "identity", "code": "M429" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 1000, "actualMmPerMin": 1000, "overridePercent": 100 }, "cutting": { "active": true, "cuttingSpeedMmPerMin": 1000 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 1000, "actualMmPerMin": 1000, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 42, "notes": [] } }, { "stepIndex": 91, "sourceFile": "helix_bc.ngc", "line": 19, "statement": "g0 x0 y0 z# b0 c0 ;return to start", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-return-to-start", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 19, "motionType": "rapid", "feed": 2100, "startJoint": { "x": -30, "y": -20, "z": 5, "b": 20, "c": 45 }, "endJoint": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": -30, "y": -20, "z": 5 }, "endTcp": { "x": 0, "y": 0, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 1000, "actualMmPerMin": 1000, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 43, "notes": [] } }, { "stepIndex": 92, "sourceFile": "helix_bc.ngc", "line": 20, "statement": "g0 x[#<_x> + #] ;adjust restore", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-radius-restore", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 20, "motionType": "rapid", "feed": 2100, "startJoint": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": 10, "y": 0, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": 0, "y": 0, "z": 10 }, "endTcp": { "x": 10, "y": 0, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 44, "notes": [] } }, { "stepIndex": 93, "sourceFile": "helix_bc.ngc", "line": 21, "statement": "M428 ;XYZBC", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-tcp-xyzbc", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "tcp-xyzbc", "code": "M428" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 45, "notes": [] } }, { "stepIndex": 94, "sourceFile": "helix_bc.ngc", "line": 22, "statement": "oendsub", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": true, "sourceLineKind": "subroutine-boundary", "result": { "status": "ok", "operation": "subroutine-exit", "sourceLineKind": "subroutine-boundary", "executed": true, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 95, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 35, "statement": "; quadrant IV", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": false, "sourceLineKind": "comment", "result": { "status": "ok", "operation": "comment-quadrant-IV", "sourceLineKind": "comment", "executed": false, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 96, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 36, "statement": "M429 ;Identity kinematics", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-identity", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "identity", "code": "M429" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 46, "notes": [] } }, { "stepIndex": 97, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 37, "statement": "g53 g0 x0y0 z# b0 c0", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-machine-reset", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 21, "motionType": "rapid", "feed": 2100, "startJoint": { "x": 10, "y": 0, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": 10, "y": 0, "z": 10 }, "endTcp": { "x": 0, "y": 0, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 47, "notes": [] } }, { "stepIndex": 98, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 38, "statement": "g10l20p0 x0y0 z# b0 c0", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "offset", "result": { "status": "ok", "operation": "set-g54-offset", "sourceLineKind": "offset", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "workOffsetAfter": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "modalChange": { "coordinateSystem": "G54", "code": "G10 L20 P0" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 48, "notes": [] } }, { "stepIndex": 99, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 39, "statement": "g0 x+# y-# z#", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-to-quadrant-center", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 22, "motionType": "rapid", "feed": 2100, "startJoint": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": 20, "y": -20, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": 0, "y": 0, "z": 10 }, "endTcp": { "x": 20, "y": -20, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 49, "notes": [] } }, { "stepIndex": 100, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "statement": "o call [#][#][#][#][#][#][#][#]", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "call", "result": { "status": "ok", "operation": "call-subroutine", "sourceLineKind": "call", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 50, "notes": [] } }, { "stepIndex": 101, "sourceFile": "helix_bc.ngc", "line": 1, "statement": "; helix using switchkins (xyzbc) b,c angles", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": false, "sourceLineKind": "comment", "result": { "status": "ok", "operation": "comment", "sourceLineKind": "comment", "executed": false, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 102, "sourceFile": "helix_bc.ngc", "line": 2, "statement": "osub", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": true, "sourceLineKind": "subroutine-boundary", "result": { "status": "ok", "operation": "subroutine-enter", "sourceLineKind": "subroutine-boundary", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 103, "sourceFile": "helix_bc.ngc", "line": 3, "statement": "# = #1 (=10)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "zmax": 10 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 104, "sourceFile": "helix_bc.ngc", "line": 4, "statement": "# = #2 (= 5)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "zmin": 5 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 105, "sourceFile": "helix_bc.ngc", "line": 5, "statement": "# = #3 (=10)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "r": 10 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 106, "sourceFile": "helix_bc.ngc", "line": 6, "statement": "# = #4 (=1000)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "frate": 1000 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 107, "sourceFile": "helix_bc.ngc", "line": 7, "statement": "# = #5 (=3)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "n": 3 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 108, "sourceFile": "helix_bc.ngc", "line": 8, "statement": "# = #6 (=0 NA)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "a": 0 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 109, "sourceFile": "helix_bc.ngc", "line": 9, "statement": "# = #7 (=45)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "b": 20 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 110, "sourceFile": "helix_bc.ngc", "line": 10, "statement": "# = #8 (=20)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "c": 45 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 111, "sourceFile": "helix_bc.ngc", "line": 12, "statement": "M429 ;Identity kinematics", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-identity", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "identity", "code": "M429" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 51, "notes": [] } }, { "stepIndex": 112, "sourceFile": "helix_bc.ngc", "line": 13, "statement": "g0 x[#<_x> - #] ;adjust for radius", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-radius-adjust", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 23, "motionType": "rapid", "feed": 2100, "startJoint": { "x": 20, "y": -20, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": 10, "y": -20, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": 20, "y": -20, "z": 10 }, "endTcp": { "x": 10, "y": -20, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 52, "notes": [] } }, { "stepIndex": 113, "sourceFile": "helix_bc.ngc", "line": 14, "statement": "g10l20p0 x0y0 z# b0 c0 ;new g54", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": true, "sourceLineKind": "offset", "result": { "status": "ok", "operation": "set-g54-offset", "sourceLineKind": "offset", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "workOffsetAfter": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "modalChange": { "coordinateSystem": "G54", "code": "G10 L20 P0" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 53, "notes": [] } }, { "stepIndex": 114, "sourceFile": "helix_bc.ngc", "line": 15, "statement": "M428 ;XYZBC", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-tcp-xyzbc", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "tcp-xyzbc", "code": "M428" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 54, "notes": [] } }, { "stepIndex": 115, "sourceFile": "helix_bc.ngc", "line": 16, "statement": "g0b#c# ;exercise b,c", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-bc-orient", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 24, "motionType": "rapid", "feed": 2100, "startJoint": { "x": 10, "y": -20, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": 10, "y": -20, "z": 10, "b": 20, "c": 45 }, "startTcp": { "x": 10, "y": -20, "z": 10 }, "endTcp": { "x": 10, "y": -20, "z": 10 }, "endToolAxis": { "i": 0.24184476264797528, "j": 0.24184476264797522, "k": 0.9396926207859084 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 55, "notes": [] } }, { "stepIndex": 116, "sourceFile": "helix_bc.ngc", "line": 17, "statement": "f# g2i#z# p# ;helix", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "feed-helix", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 25, "motionType": "arc", "feed": 1000, "startJoint": { "x": 10, "y": -20, "z": 10, "b": 20, "c": 45 }, "endJoint": { "x": 10, "y": -20, "z": 5, "b": 20, "c": 45 }, "startTcp": { "x": 10, "y": -20, "z": 10 }, "endTcp": { "x": 10, "y": -20, "z": 5 }, "endToolAxis": { "i": 0.24184476264797528, "j": 0.24184476264797522, "k": 0.9396926207859084 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 1000, "actualMmPerMin": 1000, "overridePercent": 100 }, "cutting": { "active": true, "cuttingSpeedMmPerMin": 1000 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 56, "notes": [] } }, { "stepIndex": 117, "sourceFile": "helix_bc.ngc", "line": 18, "statement": "M429 ;Identity kinematics", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-identity", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "identity", "code": "M429" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 1000, "actualMmPerMin": 1000, "overridePercent": 100 }, "cutting": { "active": true, "cuttingSpeedMmPerMin": 1000 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 1000, "actualMmPerMin": 1000, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 57, "notes": [] } }, { "stepIndex": 118, "sourceFile": "helix_bc.ngc", "line": 19, "statement": "g0 x0 y0 z# b0 c0 ;return to start", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-return-to-start", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 26, "motionType": "rapid", "feed": 2100, "startJoint": { "x": 10, "y": -20, "z": 5, "b": 20, "c": 45 }, "endJoint": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": 10, "y": -20, "z": 5 }, "endTcp": { "x": 0, "y": 0, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 1000, "actualMmPerMin": 1000, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 58, "notes": [] } }, { "stepIndex": 119, "sourceFile": "helix_bc.ngc", "line": 20, "statement": "g0 x[#<_x> + #] ;adjust restore", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-radius-restore", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 27, "motionType": "rapid", "feed": 2100, "startJoint": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": 10, "y": 0, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": 0, "y": 0, "z": 10 }, "endTcp": { "x": 10, "y": 0, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 59, "notes": [] } }, { "stepIndex": 120, "sourceFile": "helix_bc.ngc", "line": 21, "statement": "M428 ;XYZBC", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-tcp-xyzbc", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "tcp-xyzbc", "code": "M428" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 60, "notes": [] } }, { "stepIndex": 121, "sourceFile": "helix_bc.ngc", "line": 22, "statement": "oendsub", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": true, "sourceLineKind": "subroutine-boundary", "result": { "status": "ok", "operation": "subroutine-exit", "sourceLineKind": "subroutine-boundary", "executed": true, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 122, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 42, "statement": ";final position", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": false, "sourceLineKind": "comment", "result": { "status": "ok", "operation": "comment-final-position", "sourceLineKind": "comment", "executed": false, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 123, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 43, "statement": "M429 ;Identity kinematics", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-identity", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "identity", "code": "M429" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 61, "notes": [] } }, { "stepIndex": 124, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 44, "statement": "g53 g0 x0y0 z# ;MACHINE coordinates", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-final-machine-reset", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 28, "motionType": "rapid", "feed": 2100, "startJoint": { "x": 10, "y": 0, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": 10, "y": 0, "z": 10 }, "endTcp": { "x": 0, "y": 0, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 62, "notes": [] } }, { "stepIndex": 125, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 45, "statement": "g10l20p0 x0y0 z# ;new g54", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "offset", "result": { "status": "ok", "operation": "set-g54-offset", "sourceLineKind": "offset", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "workOffsetAfter": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "modalChange": { "coordinateSystem": "G54", "code": "G10 L20 P0" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 63, "notes": [] } }, { "stepIndex": 126, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 47, "statement": "oendsub", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "subroutine-boundary", "result": { "status": "ok", "operation": "subroutine-exit", "sourceLineKind": "subroutine-boundary", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 127, "sourceFile": "xyzbc_switchkins.ngc", "line": 3, "statement": "m2", "callDepth": 0, "callStack": [], "executed": true, "sourceLineKind": "program-end", "result": { "status": "ok", "operation": "program-end", "sourceLineKind": "program-end", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "program": "ended", "code": "M2" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } } ], "summary": { "motionStepCount": 29, "switchkinsStepCount": 21, "parameterAssignmentStepCount": 41, "workOffsetStepCount": 9, "callStepCount": 5, "noMotionStepCount": 99, "finalJoint": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "finalKinematics": "identity" }, "semanticBoundary": "complete_gcode_execution_process_expanded_from_linuxcnc_xyzbc_trt_sources" }, "currentVelocity": 0, "operatorMessage": "task/HAL machine homed", "pauseButton": { "action": "pause-resume", "paused": "false", "title": "Pause program", "ariaPressed": "false" }, "canvasDataset": { "width": 383, "height": 572, "threeToolAxis": "{\"x\":0,\"y\":0,\"z\":1}", "threeToolGlyphAxis": "{\"x\":0,\"y\":0,\"z\":1}" }, "canvasToolhead": { "x": 0, "y": 0, "z": 0.01 }, "canvasVismachPins": null, "programPaneDataset": { "region": "program", "liveSourceFile": "xyzbc_switchkins_sub.ngc", "liveSourceLine": "16", "liveSampleIndex": "0", "liveExecutedSamples": "1", "gcodeExecutionStatus": "ok", "gcodeExecutionStepCount": "128", "gcodeMotionStepCount": "29", "gcodeParameterStepCount": "41", "gcodeCallDepth": "1" }, "processMonitorDataset": { "linuxcncProcessMonitor": "", "sourceMode": "linuxcnc-task-motion-hal-wasm", "taskHalReady": "true", "activeLine": "1", "liveSourceFile": "xyzbc_switchkins_sub.ngc", "liveSourceLine": "16", "liveSampleIndex": "0" } }, "after": { "runState": "idle", "taskState": "on", "powerOn": true, "estopActive": false, "allHomed": true, "mode": "auto", "interpState": "idle", "taskPaused": false, "motionPaused": false, "activeLine": 16, "sampleIndex": 0, "programExecutionSourceMode": "linuxcnc-task-motion-hal-wasm", "programUiExecution": { "apiName": "web-rtcp-5axis-ui-gcode-live-execution", "status": "idle", "source": "programAxisPreviewPath.samples", "samplePeriodMs": 50, "sampleIndex": 0, "sampleCount": 1300, "executedSampleCount": 1, "timeMs": 0, "activeProgram": "configs/sim/axis/vismach/5axis/table-rotary-tilting/demos/xyzbc_switchkins.ngc", "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 16, "statement": "g53 g0 x0y0 z# b0 c0 ; quadrant I", "operation": "rapid-machine-reset", "executionIndex": 2, "gcodeStepIndex": 16, "segmentIndex": 0, "motionType": "rapid", "activeKinematics": "identity", "joint": { "x": 0, "y": 0, "z": 0, "a": 0, "b": 0, "c": 0 }, "tcp": { "x": 0, "y": 0, "z": 10 }, "toolAxis": { "i": 0, "j": 0, "k": 1 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "machineState": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "semanticBoundary": "ui_updates_from_real_expanded_linuxcnc_gcode_sample_stream" }, "currentVelocity": 0, "operatorMessage": "task/HAL mode auto" } }, { "label": "Run", "selector": "[data-tool-id=\"btn_run\"]", "clickMethod": "dom-element-click", "at": "2026-07-09T17:32:17.699Z", "elapsedMs": 3005, "before": { "machineProfile": "xyzbc-trt", "selectedGcodeSourceRel": "configs/sim/axis/vismach/5axis/table-rotary-tilting/demos/xyzbc_switchkins.ngc", "taskHalLoaded": true, "taskHalRuntimeReadiness": { "apiName": "web-rtcp-5axis-linuxcnc-task-hal-runtime-readiness", "loaded": true, "semanticBoundary": "linuxcnc_task_motion_hal_wasm_simulation_runtime", "sdkSemanticBoundary": "linuxcnc_task_motion_hal_wasm_phase4_minimal", "executionContext": "direct", "workerUrl": null, "taskRuntimeReady": true, "motionRuntimeReady": true, "halRuntimeReady": true, "halSyncReady": true, "nativeTaskReady": true, "nativeHalSyncReady": true, "hardwareDrive": false, "hostRealtimeKernel": false, "externalUserMProcessReady": false }, "runState": "idle", "taskState": "on", "powerOn": true, "estopActive": false, "allHomed": true, "mode": "auto", "interpState": "idle", "interpResumeState": "idle", "taskPaused": false, "motionPaused": false, "rtcpState": "off", "kinsType": "identity", "activeLine": 16, "programExecutionSourceMode": "linuxcnc-task-motion-hal-wasm", "programExecutionSampleIndex": 0, "programRuntimeFeedback": { "apiName": "web-rtcp-5axis-program-runtime-feedback", "sourceMode": "linuxcnc-task-motion-hal-wasm", "semanticBoundary": "linuxcnc_task_motion_hal_wasm_simulation_runtime", "sampleIndex": 0, "motionIndex": 0, "line": 1, "motionProgramLine": 1, "halProgramLine": 1, "activeLineSource": "emc-status", "activeLineHalSynced": true, "type": "TASK_MOTION", "paused": false, "timeSeconds": 0.06, "axisPose": { "x": 0, "y": 0, "z": 0, "a": 0, "b": 0, "c": 0 }, "currentVelocityMmPerMin": 0, "requestedVelocityMmPerMin": 0, "distanceToGo": 0, "dtg": { "x": 0, "y": 0, "z": 0 }, "queueDepth": 0, "activeDepth": 0, "cycle": 60, "taskCycle": 6, "halChangedPinCount": 0 }, "axisPose": { "x": 0, "y": 0, "z": 0, "a": 0, "b": 0, "c": 0 }, "dro": { "x": 0, "y": 0, "z": 0, "a": 0, "b": 0, "c": 0, "tcpX": 0, "tcpY": 0, "tcpZ": 0, "dtgX": 0, "dtgY": 0, "dtgZ": 0 }, "programUiExecution": { "apiName": "web-rtcp-5axis-ui-gcode-live-execution", "status": "idle", "source": "programAxisPreviewPath.samples", "samplePeriodMs": 50, "sampleIndex": 0, "sampleCount": 1300, "executedSampleCount": 1, "timeMs": 0, "activeProgram": "configs/sim/axis/vismach/5axis/table-rotary-tilting/demos/xyzbc_switchkins.ngc", "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 16, "statement": "g53 g0 x0y0 z# b0 c0 ; quadrant I", "operation": "rapid-machine-reset", "executionIndex": 2, "gcodeStepIndex": 16, "segmentIndex": 0, "motionType": "rapid", "activeKinematics": "identity", "joint": { "x": 0, "y": 0, "z": 0, "a": 0, "b": 0, "c": 0 }, "tcp": { "x": 0, "y": 0, "z": 10 }, "toolAxis": { "i": 0, "j": 0, "k": 1 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "machineState": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "semanticBoundary": "ui_updates_from_real_expanded_linuxcnc_gcode_sample_stream" }, "samplePeriodMs": 50, "sampleCount": 1300, "gcodeExecutionProcess": { "apiName": "linuxcnc-xyzbc-trt-gcode-complete-execution-process", "status": "ok", "program": "xyzbc_switchkins.ngc", "sourceFiles": [ { "sourceFile": "xyzbc_switchkins.ngc", "lineCount": 3 }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "lineCount": 41 }, { "sourceFile": "helix_bc.ngc", "lineCount": 21 } ], "executionStepCount": 128, "sourceLineCoverage": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 1, "statement": "; zmax zmin r frate n a b c dist", "sourceLineKind": "comment", "visitCount": 1, "producedMotionCount": 0, "operations": [ "comment" ] }, { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "statement": "o call [10] [5] [10][1000][3][0][20][45][20]", "sourceLineKind": "call", "visitCount": 1, "producedMotionCount": 0, "operations": [ "call-subroutine" ] }, { "sourceFile": "xyzbc_switchkins.ngc", "line": 3, "statement": "m2", "sourceLineKind": "mcode", "visitCount": 1, "producedMotionCount": 0, "operations": [ "program-end" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 1, "statement": "; ngcgui-compatible subroutine", "sourceLineKind": "comment", "visitCount": 1, "producedMotionCount": 0, "operations": [ "comment" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 2, "statement": "(info: helix in each quadrant at angles B,C)", "sourceLineKind": "comment", "visitCount": 1, "producedMotionCount": 0, "operations": [ "info-comment" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 3, "statement": "osub", "sourceLineKind": "subroutine-boundary", "visitCount": 1, "producedMotionCount": 0, "operations": [ "subroutine-enter" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 4, "statement": "# = #1 (=10)", "sourceLineKind": "assignment", "visitCount": 1, "producedMotionCount": 0, "operations": [ "parameter-assignment" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 5, "statement": "# = #2 (= 5)", "sourceLineKind": "assignment", "visitCount": 1, "producedMotionCount": 0, "operations": [ "parameter-assignment" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 6, "statement": "# = #3 (=10 radius)", "sourceLineKind": "assignment", "visitCount": 1, "producedMotionCount": 0, "operations": [ "parameter-assignment" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 7, "statement": "# = #4 (=1000 feedrate)", "sourceLineKind": "assignment", "visitCount": 1, "producedMotionCount": 0, "operations": [ "parameter-assignment" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 8, "statement": "# = #5 (=3 n circles)", "sourceLineKind": "assignment", "visitCount": 1, "producedMotionCount": 0, "operations": [ "parameter-assignment" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 9, "statement": "# = #6 (=0 A angle NA)", "sourceLineKind": "assignment", "visitCount": 1, "producedMotionCount": 0, "operations": [ "parameter-assignment" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 10, "statement": "# = #7 (=30 B angle)", "sourceLineKind": "assignment", "visitCount": 1, "producedMotionCount": 0, "operations": [ "parameter-assignment" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 11, "statement": "# = #8 (=45 C angle)", "sourceLineKind": "assignment", "visitCount": 1, "producedMotionCount": 0, "operations": [ "parameter-assignment" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 12, "statement": "# = #9 (=20 distance)", "sourceLineKind": "assignment", "visitCount": 1, "producedMotionCount": 0, "operations": [ "parameter-assignment" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 14, "statement": "; quadrant I", "sourceLineKind": "comment", "visitCount": 1, "producedMotionCount": 0, "operations": [ "comment-quadrant-I" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 15, "statement": "M429 ;Identity kinematics", "sourceLineKind": "mcode", "visitCount": 1, "producedMotionCount": 0, "operations": [ "switchkins-identity" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 16, "statement": "g53 g0 x0y0 z# b0 c0 ;MACHINE coordinates", "sourceLineKind": "motion", "visitCount": 1, "producedMotionCount": 1, "operations": [ "rapid-machine-reset" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 17, "statement": "g10l20p0 x0y0 z# b0 c0 ;new g54", "sourceLineKind": "offset", "visitCount": 1, "producedMotionCount": 0, "operations": [ "set-g54-offset" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 18, "statement": "g0 x+# y+# z# ;move to pattern center position", "sourceLineKind": "motion", "visitCount": 1, "producedMotionCount": 1, "operations": [ "rapid-to-quadrant-center" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "statement": "o call [#][#][#][#][#][#][#][#]", "sourceLineKind": "call", "visitCount": 1, "producedMotionCount": 0, "operations": [ "call-subroutine" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 21, "statement": "; quadrant II", "sourceLineKind": "comment", "visitCount": 1, "producedMotionCount": 0, "operations": [ "comment-quadrant-II" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 22, "statement": "M429 ;Identity kinematics", "sourceLineKind": "mcode", "visitCount": 1, "producedMotionCount": 0, "operations": [ "switchkins-identity" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 23, "statement": "g53 g0 x0y0 z# b0 c0", "sourceLineKind": "motion", "visitCount": 1, "producedMotionCount": 1, "operations": [ "rapid-machine-reset" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 24, "statement": "g10l20p0 x0y0 z# b0 c0", "sourceLineKind": "offset", "visitCount": 1, "producedMotionCount": 0, "operations": [ "set-g54-offset" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 25, "statement": "g0 x-# y+# z#", "sourceLineKind": "motion", "visitCount": 1, "producedMotionCount": 1, "operations": [ "rapid-to-quadrant-center" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "statement": "o call [#][#][#][#][#][#][#][#]", "sourceLineKind": "call", "visitCount": 1, "producedMotionCount": 0, "operations": [ "call-subroutine" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 28, "statement": "; quadrant III", "sourceLineKind": "comment", "visitCount": 1, "producedMotionCount": 0, "operations": [ "comment-quadrant-III" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 29, "statement": "M429 ;Identity kinematics", "sourceLineKind": "mcode", "visitCount": 1, "producedMotionCount": 0, "operations": [ "switchkins-identity" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 30, "statement": "g53 g0 x0y0 z# b0 c0", "sourceLineKind": "motion", "visitCount": 1, "producedMotionCount": 1, "operations": [ "rapid-machine-reset" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 31, "statement": "g10l20p0 x0y0 z# b0 c0", "sourceLineKind": "offset", "visitCount": 1, "producedMotionCount": 0, "operations": [ "set-g54-offset" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 32, "statement": "g0 x-# y-# z#", "sourceLineKind": "motion", "visitCount": 1, "producedMotionCount": 1, "operations": [ "rapid-to-quadrant-center" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "statement": "o call [#][#][#][#][#][#][#][#]", "sourceLineKind": "call", "visitCount": 1, "producedMotionCount": 0, "operations": [ "call-subroutine" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 35, "statement": "; quadrant IV", "sourceLineKind": "comment", "visitCount": 1, "producedMotionCount": 0, "operations": [ "comment-quadrant-IV" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 36, "statement": "M429 ;Identity kinematics", "sourceLineKind": "mcode", "visitCount": 1, "producedMotionCount": 0, "operations": [ "switchkins-identity" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 37, "statement": "g53 g0 x0y0 z# b0 c0", "sourceLineKind": "motion", "visitCount": 1, "producedMotionCount": 1, "operations": [ "rapid-machine-reset" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 38, "statement": "g10l20p0 x0y0 z# b0 c0", "sourceLineKind": "offset", "visitCount": 1, "producedMotionCount": 0, "operations": [ "set-g54-offset" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 39, "statement": "g0 x+# y-# z#", "sourceLineKind": "motion", "visitCount": 1, "producedMotionCount": 1, "operations": [ "rapid-to-quadrant-center" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "statement": "o call [#][#][#][#][#][#][#][#]", "sourceLineKind": "call", "visitCount": 1, "producedMotionCount": 0, "operations": [ "call-subroutine" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 42, "statement": ";final position", "sourceLineKind": "comment", "visitCount": 1, "producedMotionCount": 0, "operations": [ "comment-final-position" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 43, "statement": "M429 ;Identity kinematics", "sourceLineKind": "mcode", "visitCount": 1, "producedMotionCount": 0, "operations": [ "switchkins-identity" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 44, "statement": "g53 g0 x0y0 z# ;MACHINE coordinates", "sourceLineKind": "motion", "visitCount": 1, "producedMotionCount": 1, "operations": [ "rapid-final-machine-reset" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 45, "statement": "g10l20p0 x0y0 z# ;new g54", "sourceLineKind": "offset", "visitCount": 1, "producedMotionCount": 0, "operations": [ "set-g54-offset" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 47, "statement": "oendsub", "sourceLineKind": "subroutine-boundary", "visitCount": 1, "producedMotionCount": 0, "operations": [ "subroutine-exit" ] }, { "sourceFile": "helix_bc.ngc", "line": 1, "statement": "; helix using switchkins (xyzbc) b,c angles", "sourceLineKind": "comment", "visitCount": 4, "producedMotionCount": 0, "operations": [ "comment" ] }, { "sourceFile": "helix_bc.ngc", "line": 2, "statement": "osub", "sourceLineKind": "subroutine-boundary", "visitCount": 4, "producedMotionCount": 0, "operations": [ "subroutine-enter" ] }, { "sourceFile": "helix_bc.ngc", "line": 3, "statement": "# = #1 (=10)", "sourceLineKind": "assignment", "visitCount": 4, "producedMotionCount": 0, "operations": [ "parameter-assignment" ] }, { "sourceFile": "helix_bc.ngc", "line": 4, "statement": "# = #2 (= 5)", "sourceLineKind": "assignment", "visitCount": 4, "producedMotionCount": 0, "operations": [ "parameter-assignment" ] }, { "sourceFile": "helix_bc.ngc", "line": 5, "statement": "# = #3 (=10)", "sourceLineKind": "assignment", "visitCount": 4, "producedMotionCount": 0, "operations": [ "parameter-assignment" ] }, { "sourceFile": "helix_bc.ngc", "line": 6, "statement": "# = #4 (=1000)", "sourceLineKind": "assignment", "visitCount": 4, "producedMotionCount": 0, "operations": [ "parameter-assignment" ] }, { "sourceFile": "helix_bc.ngc", "line": 7, "statement": "# = #5 (=3)", "sourceLineKind": "assignment", "visitCount": 4, "producedMotionCount": 0, "operations": [ "parameter-assignment" ] }, { "sourceFile": "helix_bc.ngc", "line": 8, "statement": "# = #6 (=0 NA)", "sourceLineKind": "assignment", "visitCount": 4, "producedMotionCount": 0, "operations": [ "parameter-assignment" ] }, { "sourceFile": "helix_bc.ngc", "line": 9, "statement": "# = #7 (=45)", "sourceLineKind": "assignment", "visitCount": 4, "producedMotionCount": 0, "operations": [ "parameter-assignment" ] }, { "sourceFile": "helix_bc.ngc", "line": 10, "statement": "# = #8 (=20)", "sourceLineKind": "assignment", "visitCount": 4, "producedMotionCount": 0, "operations": [ "parameter-assignment" ] }, { "sourceFile": "helix_bc.ngc", "line": 12, "statement": "M429 ;Identity kinematics", "sourceLineKind": "mcode", "visitCount": 4, "producedMotionCount": 0, "operations": [ "switchkins-identity" ] }, { "sourceFile": "helix_bc.ngc", "line": 13, "statement": "g0 x[#<_x> - #] ;adjust for radius", "sourceLineKind": "motion", "visitCount": 4, "producedMotionCount": 4, "operations": [ "rapid-radius-adjust" ] }, { "sourceFile": "helix_bc.ngc", "line": 14, "statement": "g10l20p0 x0y0 z# b0 c0 ;new g54", "sourceLineKind": "offset", "visitCount": 4, "producedMotionCount": 0, "operations": [ "set-g54-offset" ] }, { "sourceFile": "helix_bc.ngc", "line": 15, "statement": "M428 ;XYZBC", "sourceLineKind": "mcode", "visitCount": 4, "producedMotionCount": 0, "operations": [ "switchkins-tcp-xyzbc" ] }, { "sourceFile": "helix_bc.ngc", "line": 16, "statement": "g0b#c# ;exercise b,c", "sourceLineKind": "motion", "visitCount": 4, "producedMotionCount": 4, "operations": [ "rapid-bc-orient" ] }, { "sourceFile": "helix_bc.ngc", "line": 17, "statement": "f# g2i#z# p# ;helix", "sourceLineKind": "motion", "visitCount": 4, "producedMotionCount": 4, "operations": [ "feed-helix" ] }, { "sourceFile": "helix_bc.ngc", "line": 18, "statement": "M429 ;Identity kinematics", "sourceLineKind": "mcode", "visitCount": 4, "producedMotionCount": 0, "operations": [ "switchkins-identity" ] }, { "sourceFile": "helix_bc.ngc", "line": 19, "statement": "g0 x0 y0 z# b0 c0 ;return to start", "sourceLineKind": "motion", "visitCount": 4, "producedMotionCount": 4, "operations": [ "rapid-return-to-start" ] }, { "sourceFile": "helix_bc.ngc", "line": 20, "statement": "g0 x[#<_x> + #] ;adjust restore", "sourceLineKind": "motion", "visitCount": 4, "producedMotionCount": 4, "operations": [ "rapid-radius-restore" ] }, { "sourceFile": "helix_bc.ngc", "line": 21, "statement": "M428 ;XYZBC", "sourceLineKind": "mcode", "visitCount": 4, "producedMotionCount": 0, "operations": [ "switchkins-tcp-xyzbc" ] }, { "sourceFile": "helix_bc.ngc", "line": 22, "statement": "oendsub", "sourceLineKind": "subroutine-boundary", "visitCount": 4, "producedMotionCount": 0, "operations": [ "subroutine-exit" ] } ], "executionSteps": [ { "stepIndex": 0, "sourceFile": "xyzbc_switchkins.ngc", "line": 1, "statement": "; zmax zmin r frate n a b c dist", "callDepth": 0, "callStack": [], "executed": false, "sourceLineKind": "comment", "result": { "status": "ok", "operation": "comment", "sourceLineKind": "comment", "executed": false, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 1, "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "statement": "o call [10] [5] [10][1000][3][0][20][45][20]", "callDepth": 0, "callStack": [], "executed": true, "sourceLineKind": "call", "result": { "status": "ok", "operation": "call-subroutine", "sourceLineKind": "call", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 0, "notes": [] } }, { "stepIndex": 2, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 1, "statement": "; ngcgui-compatible subroutine", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": false, "sourceLineKind": "comment", "result": { "status": "ok", "operation": "comment", "sourceLineKind": "comment", "executed": false, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 3, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 2, "statement": "(info: helix in each quadrant at angles B,C)", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": false, "sourceLineKind": "comment", "result": { "status": "ok", "operation": "info-comment", "sourceLineKind": "comment", "executed": false, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 4, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 3, "statement": "osub", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "subroutine-boundary", "result": { "status": "ok", "operation": "subroutine-enter", "sourceLineKind": "subroutine-boundary", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 5, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 4, "statement": "# = #1 (=10)", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": {}, "parametersChanged": { "zmax": 10 }, "parametersAfter": { "zmax": 10 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 6, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 5, "statement": "# = #2 (= 5)", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10 }, "parametersChanged": { "zmin": 5 }, "parametersAfter": { "zmax": 10, "zmin": 5 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 7, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 6, "statement": "# = #3 (=10 radius)", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5 }, "parametersChanged": { "r": 10 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 8, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 7, "statement": "# = #4 (=1000 feedrate)", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10 }, "parametersChanged": { "frate": 1000 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 9, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 8, "statement": "# = #5 (=3 n circles)", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000 }, "parametersChanged": { "n": 3 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 10, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 9, "statement": "# = #6 (=0 A angle NA)", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3 }, "parametersChanged": { "a": 0 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 11, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 10, "statement": "# = #7 (=30 B angle)", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0 }, "parametersChanged": { "b": 20 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 12, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 11, "statement": "# = #8 (=45 C angle)", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20 }, "parametersChanged": { "c": 45 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 13, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 12, "statement": "# = #9 (=20 distance)", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45 }, "parametersChanged": { "dist": 20 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 14, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 14, "statement": "; quadrant I", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": false, "sourceLineKind": "comment", "result": { "status": "ok", "operation": "comment-quadrant-I", "sourceLineKind": "comment", "executed": false, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 15, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 15, "statement": "M429 ;Identity kinematics", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-identity", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "identity", "code": "M429" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 1, "notes": [] } }, { "stepIndex": 16, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 16, "statement": "g53 g0 x0y0 z# b0 c0 ;MACHINE coordinates", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-machine-reset", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 0, "motionType": "rapid", "feed": 2100, "startJoint": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": 0, "y": 0, "z": 10 }, "endTcp": { "x": 0, "y": 0, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 2, "notes": [] } }, { "stepIndex": 17, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 17, "statement": "g10l20p0 x0y0 z# b0 c0 ;new g54", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "offset", "result": { "status": "ok", "operation": "set-g54-offset", "sourceLineKind": "offset", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "workOffsetAfter": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "modalChange": { "coordinateSystem": "G54", "code": "G10 L20 P0" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 3, "notes": [] } }, { "stepIndex": 18, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 18, "statement": "g0 x+# y+# z# ;move to pattern center position", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-to-quadrant-center", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 1, "motionType": "rapid", "feed": 2100, "startJoint": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": 20, "y": 20, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": 0, "y": 0, "z": 10 }, "endTcp": { "x": 20, "y": 20, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 4, "notes": [] } }, { "stepIndex": 19, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "statement": "o call [#][#][#][#][#][#][#][#]", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "call", "result": { "status": "ok", "operation": "call-subroutine", "sourceLineKind": "call", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 5, "notes": [] } }, { "stepIndex": 20, "sourceFile": "helix_bc.ngc", "line": 1, "statement": "; helix using switchkins (xyzbc) b,c angles", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": false, "sourceLineKind": "comment", "result": { "status": "ok", "operation": "comment", "sourceLineKind": "comment", "executed": false, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 21, "sourceFile": "helix_bc.ngc", "line": 2, "statement": "osub", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": true, "sourceLineKind": "subroutine-boundary", "result": { "status": "ok", "operation": "subroutine-enter", "sourceLineKind": "subroutine-boundary", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 22, "sourceFile": "helix_bc.ngc", "line": 3, "statement": "# = #1 (=10)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "zmax": 10 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 23, "sourceFile": "helix_bc.ngc", "line": 4, "statement": "# = #2 (= 5)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "zmin": 5 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 24, "sourceFile": "helix_bc.ngc", "line": 5, "statement": "# = #3 (=10)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "r": 10 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 25, "sourceFile": "helix_bc.ngc", "line": 6, "statement": "# = #4 (=1000)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "frate": 1000 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 26, "sourceFile": "helix_bc.ngc", "line": 7, "statement": "# = #5 (=3)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "n": 3 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 27, "sourceFile": "helix_bc.ngc", "line": 8, "statement": "# = #6 (=0 NA)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "a": 0 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 28, "sourceFile": "helix_bc.ngc", "line": 9, "statement": "# = #7 (=45)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "b": 20 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 29, "sourceFile": "helix_bc.ngc", "line": 10, "statement": "# = #8 (=20)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "c": 45 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 30, "sourceFile": "helix_bc.ngc", "line": 12, "statement": "M429 ;Identity kinematics", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-identity", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "identity", "code": "M429" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 6, "notes": [] } }, { "stepIndex": 31, "sourceFile": "helix_bc.ngc", "line": 13, "statement": "g0 x[#<_x> - #] ;adjust for radius", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-radius-adjust", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 2, "motionType": "rapid", "feed": 2100, "startJoint": { "x": 20, "y": 20, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": 10, "y": 20, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": 20, "y": 20, "z": 10 }, "endTcp": { "x": 10, "y": 20, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 7, "notes": [] } }, { "stepIndex": 32, "sourceFile": "helix_bc.ngc", "line": 14, "statement": "g10l20p0 x0y0 z# b0 c0 ;new g54", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": true, "sourceLineKind": "offset", "result": { "status": "ok", "operation": "set-g54-offset", "sourceLineKind": "offset", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "workOffsetAfter": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "modalChange": { "coordinateSystem": "G54", "code": "G10 L20 P0" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 8, "notes": [] } }, { "stepIndex": 33, "sourceFile": "helix_bc.ngc", "line": 15, "statement": "M428 ;XYZBC", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-tcp-xyzbc", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "tcp-xyzbc", "code": "M428" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 9, "notes": [] } }, { "stepIndex": 34, "sourceFile": "helix_bc.ngc", "line": 16, "statement": "g0b#c# ;exercise b,c", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-bc-orient", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 3, "motionType": "rapid", "feed": 2100, "startJoint": { "x": 10, "y": 20, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": 10, "y": 20, "z": 10, "b": 20, "c": 45 }, "startTcp": { "x": 10, "y": 20, "z": 10 }, "endTcp": { "x": 10, "y": 20, "z": 10 }, "endToolAxis": { "i": 0.24184476264797528, "j": 0.24184476264797522, "k": 0.9396926207859084 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 10, "notes": [] } }, { "stepIndex": 35, "sourceFile": "helix_bc.ngc", "line": 17, "statement": "f# g2i#z# p# ;helix", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "feed-helix", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 4, "motionType": "arc", "feed": 1000, "startJoint": { "x": 10, "y": 20, "z": 10, "b": 20, "c": 45 }, "endJoint": { "x": 10, "y": 20, "z": 5, "b": 20, "c": 45 }, "startTcp": { "x": 10, "y": 20, "z": 10 }, "endTcp": { "x": 10, "y": 20, "z": 5 }, "endToolAxis": { "i": 0.24184476264797528, "j": 0.24184476264797522, "k": 0.9396926207859084 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 1000, "actualMmPerMin": 1000, "overridePercent": 100 }, "cutting": { "active": true, "cuttingSpeedMmPerMin": 1000 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 11, "notes": [] } }, { "stepIndex": 36, "sourceFile": "helix_bc.ngc", "line": 18, "statement": "M429 ;Identity kinematics", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-identity", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "identity", "code": "M429" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 1000, "actualMmPerMin": 1000, "overridePercent": 100 }, "cutting": { "active": true, "cuttingSpeedMmPerMin": 1000 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 1000, "actualMmPerMin": 1000, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 12, "notes": [] } }, { "stepIndex": 37, "sourceFile": "helix_bc.ngc", "line": 19, "statement": "g0 x0 y0 z# b0 c0 ;return to start", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-return-to-start", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 5, "motionType": "rapid", "feed": 2100, "startJoint": { "x": 10, "y": 20, "z": 5, "b": 20, "c": 45 }, "endJoint": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": 10, "y": 20, "z": 5 }, "endTcp": { "x": 0, "y": 0, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 1000, "actualMmPerMin": 1000, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 13, "notes": [] } }, { "stepIndex": 38, "sourceFile": "helix_bc.ngc", "line": 20, "statement": "g0 x[#<_x> + #] ;adjust restore", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-radius-restore", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 6, "motionType": "rapid", "feed": 2100, "startJoint": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": 10, "y": 0, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": 0, "y": 0, "z": 10 }, "endTcp": { "x": 10, "y": 0, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 14, "notes": [] } }, { "stepIndex": 39, "sourceFile": "helix_bc.ngc", "line": 21, "statement": "M428 ;XYZBC", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-tcp-xyzbc", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "tcp-xyzbc", "code": "M428" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 15, "notes": [] } }, { "stepIndex": 40, "sourceFile": "helix_bc.ngc", "line": 22, "statement": "oendsub", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": true, "sourceLineKind": "subroutine-boundary", "result": { "status": "ok", "operation": "subroutine-exit", "sourceLineKind": "subroutine-boundary", "executed": true, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 41, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 21, "statement": "; quadrant II", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": false, "sourceLineKind": "comment", "result": { "status": "ok", "operation": "comment-quadrant-II", "sourceLineKind": "comment", "executed": false, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 42, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 22, "statement": "M429 ;Identity kinematics", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-identity", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "identity", "code": "M429" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 16, "notes": [] } }, { "stepIndex": 43, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 23, "statement": "g53 g0 x0y0 z# b0 c0", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-machine-reset", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 7, "motionType": "rapid", "feed": 2100, "startJoint": { "x": 10, "y": 0, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": 10, "y": 0, "z": 10 }, "endTcp": { "x": 0, "y": 0, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 17, "notes": [] } }, { "stepIndex": 44, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 24, "statement": "g10l20p0 x0y0 z# b0 c0", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "offset", "result": { "status": "ok", "operation": "set-g54-offset", "sourceLineKind": "offset", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "workOffsetAfter": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "modalChange": { "coordinateSystem": "G54", "code": "G10 L20 P0" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 18, "notes": [] } }, { "stepIndex": 45, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 25, "statement": "g0 x-# y+# z#", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-to-quadrant-center", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 8, "motionType": "rapid", "feed": 2100, "startJoint": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": -20, "y": 20, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": 0, "y": 0, "z": 10 }, "endTcp": { "x": -20, "y": 20, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 19, "notes": [] } }, { "stepIndex": 46, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "statement": "o call [#][#][#][#][#][#][#][#]", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "call", "result": { "status": "ok", "operation": "call-subroutine", "sourceLineKind": "call", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 20, "notes": [] } }, { "stepIndex": 47, "sourceFile": "helix_bc.ngc", "line": 1, "statement": "; helix using switchkins (xyzbc) b,c angles", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": false, "sourceLineKind": "comment", "result": { "status": "ok", "operation": "comment", "sourceLineKind": "comment", "executed": false, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 48, "sourceFile": "helix_bc.ngc", "line": 2, "statement": "osub", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": true, "sourceLineKind": "subroutine-boundary", "result": { "status": "ok", "operation": "subroutine-enter", "sourceLineKind": "subroutine-boundary", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 49, "sourceFile": "helix_bc.ngc", "line": 3, "statement": "# = #1 (=10)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "zmax": 10 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 50, "sourceFile": "helix_bc.ngc", "line": 4, "statement": "# = #2 (= 5)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "zmin": 5 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 51, "sourceFile": "helix_bc.ngc", "line": 5, "statement": "# = #3 (=10)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "r": 10 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 52, "sourceFile": "helix_bc.ngc", "line": 6, "statement": "# = #4 (=1000)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "frate": 1000 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 53, "sourceFile": "helix_bc.ngc", "line": 7, "statement": "# = #5 (=3)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "n": 3 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 54, "sourceFile": "helix_bc.ngc", "line": 8, "statement": "# = #6 (=0 NA)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "a": 0 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 55, "sourceFile": "helix_bc.ngc", "line": 9, "statement": "# = #7 (=45)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "b": 20 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 56, "sourceFile": "helix_bc.ngc", "line": 10, "statement": "# = #8 (=20)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "c": 45 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 57, "sourceFile": "helix_bc.ngc", "line": 12, "statement": "M429 ;Identity kinematics", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-identity", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "identity", "code": "M429" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 21, "notes": [] } }, { "stepIndex": 58, "sourceFile": "helix_bc.ngc", "line": 13, "statement": "g0 x[#<_x> - #] ;adjust for radius", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-radius-adjust", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 9, "motionType": "rapid", "feed": 2100, "startJoint": { "x": -20, "y": 20, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": -30, "y": 20, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": -20, "y": 20, "z": 10 }, "endTcp": { "x": -30, "y": 20, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 22, "notes": [] } }, { "stepIndex": 59, "sourceFile": "helix_bc.ngc", "line": 14, "statement": "g10l20p0 x0y0 z# b0 c0 ;new g54", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": true, "sourceLineKind": "offset", "result": { "status": "ok", "operation": "set-g54-offset", "sourceLineKind": "offset", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "workOffsetAfter": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "modalChange": { "coordinateSystem": "G54", "code": "G10 L20 P0" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 23, "notes": [] } }, { "stepIndex": 60, "sourceFile": "helix_bc.ngc", "line": 15, "statement": "M428 ;XYZBC", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-tcp-xyzbc", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "tcp-xyzbc", "code": "M428" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 24, "notes": [] } }, { "stepIndex": 61, "sourceFile": "helix_bc.ngc", "line": 16, "statement": "g0b#c# ;exercise b,c", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-bc-orient", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 10, "motionType": "rapid", "feed": 2100, "startJoint": { "x": -30, "y": 20, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": -30, "y": 20, "z": 10, "b": 20, "c": 45 }, "startTcp": { "x": -30, "y": 20, "z": 10 }, "endTcp": { "x": -30, "y": 20, "z": 10 }, "endToolAxis": { "i": 0.24184476264797528, "j": 0.24184476264797522, "k": 0.9396926207859084 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 25, "notes": [] } }, { "stepIndex": 62, "sourceFile": "helix_bc.ngc", "line": 17, "statement": "f# g2i#z# p# ;helix", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "feed-helix", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 11, "motionType": "arc", "feed": 1000, "startJoint": { "x": -30, "y": 20, "z": 10, "b": 20, "c": 45 }, "endJoint": { "x": -30, "y": 20, "z": 5, "b": 20, "c": 45 }, "startTcp": { "x": -30, "y": 20, "z": 10 }, "endTcp": { "x": -30, "y": 20, "z": 5 }, "endToolAxis": { "i": 0.24184476264797528, "j": 0.24184476264797522, "k": 0.9396926207859084 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 1000, "actualMmPerMin": 1000, "overridePercent": 100 }, "cutting": { "active": true, "cuttingSpeedMmPerMin": 1000 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 26, "notes": [] } }, { "stepIndex": 63, "sourceFile": "helix_bc.ngc", "line": 18, "statement": "M429 ;Identity kinematics", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-identity", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "identity", "code": "M429" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 1000, "actualMmPerMin": 1000, "overridePercent": 100 }, "cutting": { "active": true, "cuttingSpeedMmPerMin": 1000 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 1000, "actualMmPerMin": 1000, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 27, "notes": [] } }, { "stepIndex": 64, "sourceFile": "helix_bc.ngc", "line": 19, "statement": "g0 x0 y0 z# b0 c0 ;return to start", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-return-to-start", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 12, "motionType": "rapid", "feed": 2100, "startJoint": { "x": -30, "y": 20, "z": 5, "b": 20, "c": 45 }, "endJoint": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": -30, "y": 20, "z": 5 }, "endTcp": { "x": 0, "y": 0, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 1000, "actualMmPerMin": 1000, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 28, "notes": [] } }, { "stepIndex": 65, "sourceFile": "helix_bc.ngc", "line": 20, "statement": "g0 x[#<_x> + #] ;adjust restore", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-radius-restore", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 13, "motionType": "rapid", "feed": 2100, "startJoint": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": 10, "y": 0, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": 0, "y": 0, "z": 10 }, "endTcp": { "x": 10, "y": 0, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 29, "notes": [] } }, { "stepIndex": 66, "sourceFile": "helix_bc.ngc", "line": 21, "statement": "M428 ;XYZBC", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-tcp-xyzbc", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "tcp-xyzbc", "code": "M428" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 30, "notes": [] } }, { "stepIndex": 67, "sourceFile": "helix_bc.ngc", "line": 22, "statement": "oendsub", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": true, "sourceLineKind": "subroutine-boundary", "result": { "status": "ok", "operation": "subroutine-exit", "sourceLineKind": "subroutine-boundary", "executed": true, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 68, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 28, "statement": "; quadrant III", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": false, "sourceLineKind": "comment", "result": { "status": "ok", "operation": "comment-quadrant-III", "sourceLineKind": "comment", "executed": false, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 69, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 29, "statement": "M429 ;Identity kinematics", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-identity", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "identity", "code": "M429" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 31, "notes": [] } }, { "stepIndex": 70, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 30, "statement": "g53 g0 x0y0 z# b0 c0", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-machine-reset", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 14, "motionType": "rapid", "feed": 2100, "startJoint": { "x": 10, "y": 0, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": 10, "y": 0, "z": 10 }, "endTcp": { "x": 0, "y": 0, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 32, "notes": [] } }, { "stepIndex": 71, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 31, "statement": "g10l20p0 x0y0 z# b0 c0", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "offset", "result": { "status": "ok", "operation": "set-g54-offset", "sourceLineKind": "offset", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "workOffsetAfter": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "modalChange": { "coordinateSystem": "G54", "code": "G10 L20 P0" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 33, "notes": [] } }, { "stepIndex": 72, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 32, "statement": "g0 x-# y-# z#", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-to-quadrant-center", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 15, "motionType": "rapid", "feed": 2100, "startJoint": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": -20, "y": -20, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": 0, "y": 0, "z": 10 }, "endTcp": { "x": -20, "y": -20, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 34, "notes": [] } }, { "stepIndex": 73, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "statement": "o call [#][#][#][#][#][#][#][#]", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "call", "result": { "status": "ok", "operation": "call-subroutine", "sourceLineKind": "call", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 35, "notes": [] } }, { "stepIndex": 74, "sourceFile": "helix_bc.ngc", "line": 1, "statement": "; helix using switchkins (xyzbc) b,c angles", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": false, "sourceLineKind": "comment", "result": { "status": "ok", "operation": "comment", "sourceLineKind": "comment", "executed": false, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 75, "sourceFile": "helix_bc.ngc", "line": 2, "statement": "osub", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": true, "sourceLineKind": "subroutine-boundary", "result": { "status": "ok", "operation": "subroutine-enter", "sourceLineKind": "subroutine-boundary", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 76, "sourceFile": "helix_bc.ngc", "line": 3, "statement": "# = #1 (=10)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "zmax": 10 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 77, "sourceFile": "helix_bc.ngc", "line": 4, "statement": "# = #2 (= 5)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "zmin": 5 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 78, "sourceFile": "helix_bc.ngc", "line": 5, "statement": "# = #3 (=10)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "r": 10 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 79, "sourceFile": "helix_bc.ngc", "line": 6, "statement": "# = #4 (=1000)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "frate": 1000 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 80, "sourceFile": "helix_bc.ngc", "line": 7, "statement": "# = #5 (=3)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "n": 3 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 81, "sourceFile": "helix_bc.ngc", "line": 8, "statement": "# = #6 (=0 NA)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "a": 0 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 82, "sourceFile": "helix_bc.ngc", "line": 9, "statement": "# = #7 (=45)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "b": 20 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 83, "sourceFile": "helix_bc.ngc", "line": 10, "statement": "# = #8 (=20)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "c": 45 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 84, "sourceFile": "helix_bc.ngc", "line": 12, "statement": "M429 ;Identity kinematics", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-identity", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "identity", "code": "M429" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 36, "notes": [] } }, { "stepIndex": 85, "sourceFile": "helix_bc.ngc", "line": 13, "statement": "g0 x[#<_x> - #] ;adjust for radius", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-radius-adjust", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 16, "motionType": "rapid", "feed": 2100, "startJoint": { "x": -20, "y": -20, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": -30, "y": -20, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": -20, "y": -20, "z": 10 }, "endTcp": { "x": -30, "y": -20, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 37, "notes": [] } }, { "stepIndex": 86, "sourceFile": "helix_bc.ngc", "line": 14, "statement": "g10l20p0 x0y0 z# b0 c0 ;new g54", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": true, "sourceLineKind": "offset", "result": { "status": "ok", "operation": "set-g54-offset", "sourceLineKind": "offset", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "workOffsetAfter": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "modalChange": { "coordinateSystem": "G54", "code": "G10 L20 P0" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 38, "notes": [] } }, { "stepIndex": 87, "sourceFile": "helix_bc.ngc", "line": 15, "statement": "M428 ;XYZBC", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-tcp-xyzbc", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "tcp-xyzbc", "code": "M428" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 39, "notes": [] } }, { "stepIndex": 88, "sourceFile": "helix_bc.ngc", "line": 16, "statement": "g0b#c# ;exercise b,c", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-bc-orient", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 17, "motionType": "rapid", "feed": 2100, "startJoint": { "x": -30, "y": -20, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": -30, "y": -20, "z": 10, "b": 20, "c": 45 }, "startTcp": { "x": -30, "y": -20, "z": 10 }, "endTcp": { "x": -30, "y": -20, "z": 10 }, "endToolAxis": { "i": 0.24184476264797528, "j": 0.24184476264797522, "k": 0.9396926207859084 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 40, "notes": [] } }, { "stepIndex": 89, "sourceFile": "helix_bc.ngc", "line": 17, "statement": "f# g2i#z# p# ;helix", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "feed-helix", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 18, "motionType": "arc", "feed": 1000, "startJoint": { "x": -30, "y": -20, "z": 10, "b": 20, "c": 45 }, "endJoint": { "x": -30, "y": -20, "z": 5, "b": 20, "c": 45 }, "startTcp": { "x": -30, "y": -20, "z": 10 }, "endTcp": { "x": -30, "y": -20, "z": 5 }, "endToolAxis": { "i": 0.24184476264797528, "j": 0.24184476264797522, "k": 0.9396926207859084 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 1000, "actualMmPerMin": 1000, "overridePercent": 100 }, "cutting": { "active": true, "cuttingSpeedMmPerMin": 1000 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 41, "notes": [] } }, { "stepIndex": 90, "sourceFile": "helix_bc.ngc", "line": 18, "statement": "M429 ;Identity kinematics", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-identity", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "identity", "code": "M429" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 1000, "actualMmPerMin": 1000, "overridePercent": 100 }, "cutting": { "active": true, "cuttingSpeedMmPerMin": 1000 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 1000, "actualMmPerMin": 1000, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 42, "notes": [] } }, { "stepIndex": 91, "sourceFile": "helix_bc.ngc", "line": 19, "statement": "g0 x0 y0 z# b0 c0 ;return to start", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-return-to-start", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 19, "motionType": "rapid", "feed": 2100, "startJoint": { "x": -30, "y": -20, "z": 5, "b": 20, "c": 45 }, "endJoint": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": -30, "y": -20, "z": 5 }, "endTcp": { "x": 0, "y": 0, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 1000, "actualMmPerMin": 1000, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 43, "notes": [] } }, { "stepIndex": 92, "sourceFile": "helix_bc.ngc", "line": 20, "statement": "g0 x[#<_x> + #] ;adjust restore", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-radius-restore", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 20, "motionType": "rapid", "feed": 2100, "startJoint": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": 10, "y": 0, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": 0, "y": 0, "z": 10 }, "endTcp": { "x": 10, "y": 0, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 44, "notes": [] } }, { "stepIndex": 93, "sourceFile": "helix_bc.ngc", "line": 21, "statement": "M428 ;XYZBC", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-tcp-xyzbc", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "tcp-xyzbc", "code": "M428" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 45, "notes": [] } }, { "stepIndex": 94, "sourceFile": "helix_bc.ngc", "line": 22, "statement": "oendsub", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": true, "sourceLineKind": "subroutine-boundary", "result": { "status": "ok", "operation": "subroutine-exit", "sourceLineKind": "subroutine-boundary", "executed": true, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 95, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 35, "statement": "; quadrant IV", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": false, "sourceLineKind": "comment", "result": { "status": "ok", "operation": "comment-quadrant-IV", "sourceLineKind": "comment", "executed": false, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 96, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 36, "statement": "M429 ;Identity kinematics", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-identity", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "identity", "code": "M429" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 46, "notes": [] } }, { "stepIndex": 97, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 37, "statement": "g53 g0 x0y0 z# b0 c0", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-machine-reset", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 21, "motionType": "rapid", "feed": 2100, "startJoint": { "x": 10, "y": 0, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": 10, "y": 0, "z": 10 }, "endTcp": { "x": 0, "y": 0, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 47, "notes": [] } }, { "stepIndex": 98, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 38, "statement": "g10l20p0 x0y0 z# b0 c0", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "offset", "result": { "status": "ok", "operation": "set-g54-offset", "sourceLineKind": "offset", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "workOffsetAfter": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "modalChange": { "coordinateSystem": "G54", "code": "G10 L20 P0" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 48, "notes": [] } }, { "stepIndex": 99, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 39, "statement": "g0 x+# y-# z#", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-to-quadrant-center", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 22, "motionType": "rapid", "feed": 2100, "startJoint": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": 20, "y": -20, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": 0, "y": 0, "z": 10 }, "endTcp": { "x": 20, "y": -20, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 49, "notes": [] } }, { "stepIndex": 100, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "statement": "o call [#][#][#][#][#][#][#][#]", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "call", "result": { "status": "ok", "operation": "call-subroutine", "sourceLineKind": "call", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 50, "notes": [] } }, { "stepIndex": 101, "sourceFile": "helix_bc.ngc", "line": 1, "statement": "; helix using switchkins (xyzbc) b,c angles", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": false, "sourceLineKind": "comment", "result": { "status": "ok", "operation": "comment", "sourceLineKind": "comment", "executed": false, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 102, "sourceFile": "helix_bc.ngc", "line": 2, "statement": "osub", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": true, "sourceLineKind": "subroutine-boundary", "result": { "status": "ok", "operation": "subroutine-enter", "sourceLineKind": "subroutine-boundary", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 103, "sourceFile": "helix_bc.ngc", "line": 3, "statement": "# = #1 (=10)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "zmax": 10 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 104, "sourceFile": "helix_bc.ngc", "line": 4, "statement": "# = #2 (= 5)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "zmin": 5 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 105, "sourceFile": "helix_bc.ngc", "line": 5, "statement": "# = #3 (=10)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "r": 10 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 106, "sourceFile": "helix_bc.ngc", "line": 6, "statement": "# = #4 (=1000)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "frate": 1000 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 107, "sourceFile": "helix_bc.ngc", "line": 7, "statement": "# = #5 (=3)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "n": 3 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 108, "sourceFile": "helix_bc.ngc", "line": 8, "statement": "# = #6 (=0 NA)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "a": 0 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 109, "sourceFile": "helix_bc.ngc", "line": 9, "statement": "# = #7 (=45)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "b": 20 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 110, "sourceFile": "helix_bc.ngc", "line": 10, "statement": "# = #8 (=20)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "c": 45 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 111, "sourceFile": "helix_bc.ngc", "line": 12, "statement": "M429 ;Identity kinematics", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-identity", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "identity", "code": "M429" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 51, "notes": [] } }, { "stepIndex": 112, "sourceFile": "helix_bc.ngc", "line": 13, "statement": "g0 x[#<_x> - #] ;adjust for radius", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-radius-adjust", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 23, "motionType": "rapid", "feed": 2100, "startJoint": { "x": 20, "y": -20, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": 10, "y": -20, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": 20, "y": -20, "z": 10 }, "endTcp": { "x": 10, "y": -20, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 52, "notes": [] } }, { "stepIndex": 113, "sourceFile": "helix_bc.ngc", "line": 14, "statement": "g10l20p0 x0y0 z# b0 c0 ;new g54", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": true, "sourceLineKind": "offset", "result": { "status": "ok", "operation": "set-g54-offset", "sourceLineKind": "offset", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "workOffsetAfter": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "modalChange": { "coordinateSystem": "G54", "code": "G10 L20 P0" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 53, "notes": [] } }, { "stepIndex": 114, "sourceFile": "helix_bc.ngc", "line": 15, "statement": "M428 ;XYZBC", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-tcp-xyzbc", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "tcp-xyzbc", "code": "M428" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 54, "notes": [] } }, { "stepIndex": 115, "sourceFile": "helix_bc.ngc", "line": 16, "statement": "g0b#c# ;exercise b,c", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-bc-orient", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 24, "motionType": "rapid", "feed": 2100, "startJoint": { "x": 10, "y": -20, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": 10, "y": -20, "z": 10, "b": 20, "c": 45 }, "startTcp": { "x": 10, "y": -20, "z": 10 }, "endTcp": { "x": 10, "y": -20, "z": 10 }, "endToolAxis": { "i": 0.24184476264797528, "j": 0.24184476264797522, "k": 0.9396926207859084 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 55, "notes": [] } }, { "stepIndex": 116, "sourceFile": "helix_bc.ngc", "line": 17, "statement": "f# g2i#z# p# ;helix", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "feed-helix", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 25, "motionType": "arc", "feed": 1000, "startJoint": { "x": 10, "y": -20, "z": 10, "b": 20, "c": 45 }, "endJoint": { "x": 10, "y": -20, "z": 5, "b": 20, "c": 45 }, "startTcp": { "x": 10, "y": -20, "z": 10 }, "endTcp": { "x": 10, "y": -20, "z": 5 }, "endToolAxis": { "i": 0.24184476264797528, "j": 0.24184476264797522, "k": 0.9396926207859084 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 1000, "actualMmPerMin": 1000, "overridePercent": 100 }, "cutting": { "active": true, "cuttingSpeedMmPerMin": 1000 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 56, "notes": [] } }, { "stepIndex": 117, "sourceFile": "helix_bc.ngc", "line": 18, "statement": "M429 ;Identity kinematics", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-identity", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "identity", "code": "M429" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 1000, "actualMmPerMin": 1000, "overridePercent": 100 }, "cutting": { "active": true, "cuttingSpeedMmPerMin": 1000 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 1000, "actualMmPerMin": 1000, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 57, "notes": [] } }, { "stepIndex": 118, "sourceFile": "helix_bc.ngc", "line": 19, "statement": "g0 x0 y0 z# b0 c0 ;return to start", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-return-to-start", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 26, "motionType": "rapid", "feed": 2100, "startJoint": { "x": 10, "y": -20, "z": 5, "b": 20, "c": 45 }, "endJoint": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": 10, "y": -20, "z": 5 }, "endTcp": { "x": 0, "y": 0, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 1000, "actualMmPerMin": 1000, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 58, "notes": [] } }, { "stepIndex": 119, "sourceFile": "helix_bc.ngc", "line": 20, "statement": "g0 x[#<_x> + #] ;adjust restore", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-radius-restore", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 27, "motionType": "rapid", "feed": 2100, "startJoint": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": 10, "y": 0, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": 0, "y": 0, "z": 10 }, "endTcp": { "x": 10, "y": 0, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 59, "notes": [] } }, { "stepIndex": 120, "sourceFile": "helix_bc.ngc", "line": 21, "statement": "M428 ;XYZBC", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-tcp-xyzbc", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "tcp-xyzbc", "code": "M428" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 60, "notes": [] } }, { "stepIndex": 121, "sourceFile": "helix_bc.ngc", "line": 22, "statement": "oendsub", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": true, "sourceLineKind": "subroutine-boundary", "result": { "status": "ok", "operation": "subroutine-exit", "sourceLineKind": "subroutine-boundary", "executed": true, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 122, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 42, "statement": ";final position", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": false, "sourceLineKind": "comment", "result": { "status": "ok", "operation": "comment-final-position", "sourceLineKind": "comment", "executed": false, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 123, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 43, "statement": "M429 ;Identity kinematics", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-identity", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "identity", "code": "M429" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 61, "notes": [] } }, { "stepIndex": 124, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 44, "statement": "g53 g0 x0y0 z# ;MACHINE coordinates", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-final-machine-reset", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 28, "motionType": "rapid", "feed": 2100, "startJoint": { "x": 10, "y": 0, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": 10, "y": 0, "z": 10 }, "endTcp": { "x": 0, "y": 0, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 62, "notes": [] } }, { "stepIndex": 125, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 45, "statement": "g10l20p0 x0y0 z# ;new g54", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "offset", "result": { "status": "ok", "operation": "set-g54-offset", "sourceLineKind": "offset", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "workOffsetAfter": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "modalChange": { "coordinateSystem": "G54", "code": "G10 L20 P0" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 63, "notes": [] } }, { "stepIndex": 126, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 47, "statement": "oendsub", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "subroutine-boundary", "result": { "status": "ok", "operation": "subroutine-exit", "sourceLineKind": "subroutine-boundary", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 127, "sourceFile": "xyzbc_switchkins.ngc", "line": 3, "statement": "m2", "callDepth": 0, "callStack": [], "executed": true, "sourceLineKind": "program-end", "result": { "status": "ok", "operation": "program-end", "sourceLineKind": "program-end", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "program": "ended", "code": "M2" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } } ], "summary": { "motionStepCount": 29, "switchkinsStepCount": 21, "parameterAssignmentStepCount": 41, "workOffsetStepCount": 9, "callStepCount": 5, "noMotionStepCount": 99, "finalJoint": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "finalKinematics": "identity" }, "semanticBoundary": "complete_gcode_execution_process_expanded_from_linuxcnc_xyzbc_trt_sources" }, "currentVelocity": 0, "operatorMessage": "task/HAL mode auto", "pauseButton": { "action": "pause-resume", "paused": "false", "title": "Pause program", "ariaPressed": "false" }, "canvasDataset": { "width": 383, "height": 572, "threeToolAxis": "{\"x\":0,\"y\":0,\"z\":1}", "threeToolGlyphAxis": "{\"x\":0,\"y\":0,\"z\":1}" }, "canvasToolhead": { "x": 0, "y": 0, "z": 0.01 }, "canvasVismachPins": null, "programPaneDataset": { "region": "program", "liveSourceFile": "xyzbc_switchkins_sub.ngc", "liveSourceLine": "16", "liveSampleIndex": "0", "liveExecutedSamples": "1", "gcodeExecutionStatus": "ok", "gcodeExecutionStepCount": "128", "gcodeMotionStepCount": "29", "gcodeParameterStepCount": "41", "gcodeCallDepth": "1" }, "processMonitorDataset": { "linuxcncProcessMonitor": "", "sourceMode": "linuxcnc-task-motion-hal-wasm", "taskHalReady": "true", "activeLine": "1", "liveSourceFile": "xyzbc_switchkins_sub.ngc", "liveSourceLine": "16", "liveSampleIndex": "0" } }, "after": { "runState": "running", "taskState": "on", "powerOn": true, "estopActive": false, "allHomed": true, "mode": "auto", "interpState": "reading", "taskPaused": false, "motionPaused": false, "activeLine": 18, "sampleIndex": 1, "programExecutionSourceMode": "linuxcnc-task-motion-hal-wasm", "programUiExecution": { "apiName": "web-rtcp-5axis-ui-gcode-live-execution", "status": "idle", "source": "programAxisPreviewPath.samples", "samplePeriodMs": 50, "sampleIndex": 1, "sampleCount": 1300, "executedSampleCount": 2, "timeMs": 50, "activeProgram": "configs/sim/axis/vismach/5axis/table-rotary-tilting/demos/xyzbc_switchkins.ngc", "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 18, "statement": "g0 x+20 y+20 z#", "operation": "rapid-to-quadrant-center", "executionIndex": 4, "gcodeStepIndex": 18, "segmentIndex": 1, "motionType": "rapid", "activeKinematics": "identity", "joint": { "x": 0, "y": 0, "z": 10, "a": 0, "b": 0, "c": 0 }, "tcp": { "x": 0, "y": 0, "z": 10 }, "toolAxis": { "i": 0, "j": 0, "k": 1 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "machineState": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "semanticBoundary": "ui_updates_from_real_expanded_linuxcnc_gcode_sample_stream" }, "currentVelocity": 1996.5359999999998, "operatorMessage": "task/HAL status loop running xyzbc-trt xyzbc-trt" } }, { "label": "Run 后执行 5 秒", "at": "2026-07-09T17:32:23.410Z", "durationMs": 5711, "state": { "runState": "running", "taskState": "on", "powerOn": true, "estopActive": false, "allHomed": true, "mode": "auto", "interpState": "reading", "taskPaused": false, "motionPaused": false, "activeLine": 17, "sampleIndex": 100, "programExecutionSourceMode": "linuxcnc-task-motion-hal-wasm", "programUiExecution": { "apiName": "web-rtcp-5axis-ui-gcode-live-execution", "status": "running", "source": "programAxisPreviewPath.samples", "samplePeriodMs": 50, "sampleIndex": 100, "sampleCount": 1300, "executedSampleCount": 101, "timeMs": 5000, "activeProgram": "configs/sim/axis/vismach/5axis/table-rotary-tilting/demos/xyzbc_switchkins.ngc", "sourceFile": "helix_bc.ngc", "line": 17, "statement": "f# g2i#z# p#", "operation": "feed-helix", "executionIndex": 11, "gcodeStepIndex": 35, "segmentIndex": 4, "motionType": "arc", "activeKinematics": "tcp-xyzbc", "joint": { "x": 27.2402, "y": 26.8978, "z": 8.96476, "a": 0, "b": 20, "c": 45 }, "tcp": { "x": 27.2402, "y": 26.8978, "z": 8.96476 }, "toolAxis": { "i": 0.24184476264797528, "j": 0.24184476264797522, "k": 0.9396926207859084 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "machineState": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 1000, "actualMmPerMin": 1000, "overridePercent": 100 }, "cutting": { "active": true, "cuttingSpeedMmPerMin": 1000 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "semanticBoundary": "ui_updates_from_real_expanded_linuxcnc_gcode_sample_stream" }, "currentVelocity": 996.516, "operatorMessage": "task/HAL status tick 99" }, "frozenPosition": null, "movedDuringHold": true }, { "label": "第一次暂停", "selector": "[data-tool-id=\"tbtn_pause\"]", "clickMethod": "dom-element-click", "at": "2026-07-09T17:32:26.167Z", "elapsedMs": 2652, "before": { "machineProfile": "xyzbc-trt", "selectedGcodeSourceRel": "configs/sim/axis/vismach/5axis/table-rotary-tilting/demos/xyzbc_switchkins.ngc", "taskHalLoaded": true, "taskHalRuntimeReadiness": { "apiName": "web-rtcp-5axis-linuxcnc-task-hal-runtime-readiness", "loaded": true, "semanticBoundary": "linuxcnc_task_motion_hal_wasm_simulation_runtime", "sdkSemanticBoundary": "linuxcnc_task_motion_hal_wasm_phase4_minimal", "executionContext": "direct", "workerUrl": null, "taskRuntimeReady": true, "motionRuntimeReady": true, "halRuntimeReady": true, "halSyncReady": true, "nativeTaskReady": true, "nativeHalSyncReady": true, "hardwareDrive": false, "hostRealtimeKernel": false, "externalUserMProcessReady": false }, "runState": "running", "taskState": "on", "powerOn": true, "estopActive": false, "allHomed": true, "mode": "auto", "interpState": "reading", "interpResumeState": "reading", "taskPaused": false, "motionPaused": false, "rtcpState": "on", "kinsType": "tcp-xyzbc", "activeLine": 17, "programExecutionSourceMode": "linuxcnc-task-motion-hal-wasm", "programExecutionSampleIndex": 150, "programRuntimeFeedback": { "apiName": "web-rtcp-5axis-program-runtime-feedback", "sourceMode": "linuxcnc-task-motion-hal-wasm", "semanticBoundary": "linuxcnc_task_motion_hal_wasm_simulation_runtime", "sampleIndex": 150, "motionIndex": 4, "line": 17, "motionProgramLine": 17, "halProgramLine": 17, "activeLineSource": "emc-status", "activeLineHalSynced": true, "type": "TASK_MOTION", "paused": false, "timeSeconds": 7.5600000000000005, "axisPose": { "x": 21.9933, "y": 10.2007, "z": 7.86344, "a": 0, "b": 20, "c": 45 }, "currentVelocityMmPerMin": 996.516, "requestedVelocityMmPerMin": 996.516, "distanceToGo": 0, "dtg": { "x": 0, "y": 0, "z": 0 }, "queueDepth": 0, "activeDepth": 0, "cycle": 7560, "taskCycle": 756, "halChangedPinCount": 0, "sourceFile": "helix_bc.ngc", "statement": "f# g2i#z# p#", "motionType": "arc", "activeKinematics": "tcp-xyzbc", "tcp": { "x": 21.9933, "y": 10.2007, "z": 7.86344 }, "toolAxis": { "i": 0.24184476264797528, "j": 0.24184476264797522, "k": 0.9396926207859084 }, "machineState": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 1000, "actualMmPerMin": 1000, "overridePercent": 100 }, "cutting": { "active": true, "cuttingSpeedMmPerMin": 1000 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } } }, "axisPose": { "x": 21.9933, "y": 10.2007, "z": 7.86344, "a": 0, "b": 20, "c": 45 }, "dro": { "x": 21.9933, "y": 10.2007, "z": 7.86344, "a": 0, "b": 20, "c": 45, "tcpX": 21.9933, "tcpY": 10.2007, "tcpZ": 7.86344, "dtgX": 0, "dtgY": 0, "dtgZ": 0 }, "programUiExecution": { "apiName": "web-rtcp-5axis-ui-gcode-live-execution", "status": "running", "source": "programAxisPreviewPath.samples", "samplePeriodMs": 50, "sampleIndex": 150, "sampleCount": 1300, "executedSampleCount": 151, "timeMs": 7500, "activeProgram": "configs/sim/axis/vismach/5axis/table-rotary-tilting/demos/xyzbc_switchkins.ngc", "sourceFile": "helix_bc.ngc", "line": 17, "statement": "f# g2i#z# p#", "operation": "feed-helix", "executionIndex": 11, "gcodeStepIndex": 35, "segmentIndex": 4, "motionType": "arc", "activeKinematics": "tcp-xyzbc", "joint": { "x": 21.9933, "y": 10.2007, "z": 7.86344, "a": 0, "b": 20, "c": 45 }, "tcp": { "x": 21.9933, "y": 10.2007, "z": 7.86344 }, "toolAxis": { "i": 0.24184476264797528, "j": 0.24184476264797522, "k": 0.9396926207859084 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "machineState": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 1000, "actualMmPerMin": 1000, "overridePercent": 100 }, "cutting": { "active": true, "cuttingSpeedMmPerMin": 1000 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "semanticBoundary": "ui_updates_from_real_expanded_linuxcnc_gcode_sample_stream" }, "samplePeriodMs": 50, "sampleCount": 1300, "gcodeExecutionProcess": { "apiName": "linuxcnc-xyzbc-trt-gcode-complete-execution-process", "status": "ok", "program": "xyzbc_switchkins.ngc", "sourceFiles": [ { "sourceFile": "xyzbc_switchkins.ngc", "lineCount": 3 }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "lineCount": 41 }, { "sourceFile": "helix_bc.ngc", "lineCount": 21 } ], "executionStepCount": 128, "sourceLineCoverage": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 1, "statement": "; zmax zmin r frate n a b c dist", "sourceLineKind": "comment", "visitCount": 1, "producedMotionCount": 0, "operations": [ "comment" ] }, { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "statement": "o call [10] [5] [10][1000][3][0][20][45][20]", "sourceLineKind": "call", "visitCount": 1, "producedMotionCount": 0, "operations": [ "call-subroutine" ] }, { "sourceFile": "xyzbc_switchkins.ngc", "line": 3, "statement": "m2", "sourceLineKind": "mcode", "visitCount": 1, "producedMotionCount": 0, "operations": [ "program-end" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 1, "statement": "; ngcgui-compatible subroutine", "sourceLineKind": "comment", "visitCount": 1, "producedMotionCount": 0, "operations": [ "comment" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 2, "statement": "(info: helix in each quadrant at angles B,C)", "sourceLineKind": "comment", "visitCount": 1, "producedMotionCount": 0, "operations": [ "info-comment" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 3, "statement": "osub", "sourceLineKind": "subroutine-boundary", "visitCount": 1, "producedMotionCount": 0, "operations": [ "subroutine-enter" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 4, "statement": "# = #1 (=10)", "sourceLineKind": "assignment", "visitCount": 1, "producedMotionCount": 0, "operations": [ "parameter-assignment" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 5, "statement": "# = #2 (= 5)", "sourceLineKind": "assignment", "visitCount": 1, "producedMotionCount": 0, "operations": [ "parameter-assignment" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 6, "statement": "# = #3 (=10 radius)", "sourceLineKind": "assignment", "visitCount": 1, "producedMotionCount": 0, "operations": [ "parameter-assignment" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 7, "statement": "# = #4 (=1000 feedrate)", "sourceLineKind": "assignment", "visitCount": 1, "producedMotionCount": 0, "operations": [ "parameter-assignment" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 8, "statement": "# = #5 (=3 n circles)", "sourceLineKind": "assignment", "visitCount": 1, "producedMotionCount": 0, "operations": [ "parameter-assignment" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 9, "statement": "# = #6 (=0 A angle NA)", "sourceLineKind": "assignment", "visitCount": 1, "producedMotionCount": 0, "operations": [ "parameter-assignment" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 10, "statement": "# = #7 (=30 B angle)", "sourceLineKind": "assignment", "visitCount": 1, "producedMotionCount": 0, "operations": [ "parameter-assignment" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 11, "statement": "# = #8 (=45 C angle)", "sourceLineKind": "assignment", "visitCount": 1, "producedMotionCount": 0, "operations": [ "parameter-assignment" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 12, "statement": "# = #9 (=20 distance)", "sourceLineKind": "assignment", "visitCount": 1, "producedMotionCount": 0, "operations": [ "parameter-assignment" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 14, "statement": "; quadrant I", "sourceLineKind": "comment", "visitCount": 1, "producedMotionCount": 0, "operations": [ "comment-quadrant-I" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 15, "statement": "M429 ;Identity kinematics", "sourceLineKind": "mcode", "visitCount": 1, "producedMotionCount": 0, "operations": [ "switchkins-identity" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 16, "statement": "g53 g0 x0y0 z# b0 c0 ;MACHINE coordinates", "sourceLineKind": "motion", "visitCount": 1, "producedMotionCount": 1, "operations": [ "rapid-machine-reset" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 17, "statement": "g10l20p0 x0y0 z# b0 c0 ;new g54", "sourceLineKind": "offset", "visitCount": 1, "producedMotionCount": 0, "operations": [ "set-g54-offset" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 18, "statement": "g0 x+# y+# z# ;move to pattern center position", "sourceLineKind": "motion", "visitCount": 1, "producedMotionCount": 1, "operations": [ "rapid-to-quadrant-center" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "statement": "o call [#][#][#][#][#][#][#][#]", "sourceLineKind": "call", "visitCount": 1, "producedMotionCount": 0, "operations": [ "call-subroutine" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 21, "statement": "; quadrant II", "sourceLineKind": "comment", "visitCount": 1, "producedMotionCount": 0, "operations": [ "comment-quadrant-II" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 22, "statement": "M429 ;Identity kinematics", "sourceLineKind": "mcode", "visitCount": 1, "producedMotionCount": 0, "operations": [ "switchkins-identity" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 23, "statement": "g53 g0 x0y0 z# b0 c0", "sourceLineKind": "motion", "visitCount": 1, "producedMotionCount": 1, "operations": [ "rapid-machine-reset" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 24, "statement": "g10l20p0 x0y0 z# b0 c0", "sourceLineKind": "offset", "visitCount": 1, "producedMotionCount": 0, "operations": [ "set-g54-offset" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 25, "statement": "g0 x-# y+# z#", "sourceLineKind": "motion", "visitCount": 1, "producedMotionCount": 1, "operations": [ "rapid-to-quadrant-center" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "statement": "o call [#][#][#][#][#][#][#][#]", "sourceLineKind": "call", "visitCount": 1, "producedMotionCount": 0, "operations": [ "call-subroutine" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 28, "statement": "; quadrant III", "sourceLineKind": "comment", "visitCount": 1, "producedMotionCount": 0, "operations": [ "comment-quadrant-III" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 29, "statement": "M429 ;Identity kinematics", "sourceLineKind": "mcode", "visitCount": 1, "producedMotionCount": 0, "operations": [ "switchkins-identity" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 30, "statement": "g53 g0 x0y0 z# b0 c0", "sourceLineKind": "motion", "visitCount": 1, "producedMotionCount": 1, "operations": [ "rapid-machine-reset" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 31, "statement": "g10l20p0 x0y0 z# b0 c0", "sourceLineKind": "offset", "visitCount": 1, "producedMotionCount": 0, "operations": [ "set-g54-offset" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 32, "statement": "g0 x-# y-# z#", "sourceLineKind": "motion", "visitCount": 1, "producedMotionCount": 1, "operations": [ "rapid-to-quadrant-center" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "statement": "o call [#][#][#][#][#][#][#][#]", "sourceLineKind": "call", "visitCount": 1, "producedMotionCount": 0, "operations": [ "call-subroutine" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 35, "statement": "; quadrant IV", "sourceLineKind": "comment", "visitCount": 1, "producedMotionCount": 0, "operations": [ "comment-quadrant-IV" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 36, "statement": "M429 ;Identity kinematics", "sourceLineKind": "mcode", "visitCount": 1, "producedMotionCount": 0, "operations": [ "switchkins-identity" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 37, "statement": "g53 g0 x0y0 z# b0 c0", "sourceLineKind": "motion", "visitCount": 1, "producedMotionCount": 1, "operations": [ "rapid-machine-reset" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 38, "statement": "g10l20p0 x0y0 z# b0 c0", "sourceLineKind": "offset", "visitCount": 1, "producedMotionCount": 0, "operations": [ "set-g54-offset" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 39, "statement": "g0 x+# y-# z#", "sourceLineKind": "motion", "visitCount": 1, "producedMotionCount": 1, "operations": [ "rapid-to-quadrant-center" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "statement": "o call [#][#][#][#][#][#][#][#]", "sourceLineKind": "call", "visitCount": 1, "producedMotionCount": 0, "operations": [ "call-subroutine" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 42, "statement": ";final position", "sourceLineKind": "comment", "visitCount": 1, "producedMotionCount": 0, "operations": [ "comment-final-position" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 43, "statement": "M429 ;Identity kinematics", "sourceLineKind": "mcode", "visitCount": 1, "producedMotionCount": 0, "operations": [ "switchkins-identity" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 44, "statement": "g53 g0 x0y0 z# ;MACHINE coordinates", "sourceLineKind": "motion", "visitCount": 1, "producedMotionCount": 1, "operations": [ "rapid-final-machine-reset" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 45, "statement": "g10l20p0 x0y0 z# ;new g54", "sourceLineKind": "offset", "visitCount": 1, "producedMotionCount": 0, "operations": [ "set-g54-offset" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 47, "statement": "oendsub", "sourceLineKind": "subroutine-boundary", "visitCount": 1, "producedMotionCount": 0, "operations": [ "subroutine-exit" ] }, { "sourceFile": "helix_bc.ngc", "line": 1, "statement": "; helix using switchkins (xyzbc) b,c angles", "sourceLineKind": "comment", "visitCount": 4, "producedMotionCount": 0, "operations": [ "comment" ] }, { "sourceFile": "helix_bc.ngc", "line": 2, "statement": "osub", "sourceLineKind": "subroutine-boundary", "visitCount": 4, "producedMotionCount": 0, "operations": [ "subroutine-enter" ] }, { "sourceFile": "helix_bc.ngc", "line": 3, "statement": "# = #1 (=10)", "sourceLineKind": "assignment", "visitCount": 4, "producedMotionCount": 0, "operations": [ "parameter-assignment" ] }, { "sourceFile": "helix_bc.ngc", "line": 4, "statement": "# = #2 (= 5)", "sourceLineKind": "assignment", "visitCount": 4, "producedMotionCount": 0, "operations": [ "parameter-assignment" ] }, { "sourceFile": "helix_bc.ngc", "line": 5, "statement": "# = #3 (=10)", "sourceLineKind": "assignment", "visitCount": 4, "producedMotionCount": 0, "operations": [ "parameter-assignment" ] }, { "sourceFile": "helix_bc.ngc", "line": 6, "statement": "# = #4 (=1000)", "sourceLineKind": "assignment", "visitCount": 4, "producedMotionCount": 0, "operations": [ "parameter-assignment" ] }, { "sourceFile": "helix_bc.ngc", "line": 7, "statement": "# = #5 (=3)", "sourceLineKind": "assignment", "visitCount": 4, "producedMotionCount": 0, "operations": [ "parameter-assignment" ] }, { "sourceFile": "helix_bc.ngc", "line": 8, "statement": "# = #6 (=0 NA)", "sourceLineKind": "assignment", "visitCount": 4, "producedMotionCount": 0, "operations": [ "parameter-assignment" ] }, { "sourceFile": "helix_bc.ngc", "line": 9, "statement": "# = #7 (=45)", "sourceLineKind": "assignment", "visitCount": 4, "producedMotionCount": 0, "operations": [ "parameter-assignment" ] }, { "sourceFile": "helix_bc.ngc", "line": 10, "statement": "# = #8 (=20)", "sourceLineKind": "assignment", "visitCount": 4, "producedMotionCount": 0, "operations": [ "parameter-assignment" ] }, { "sourceFile": "helix_bc.ngc", "line": 12, "statement": "M429 ;Identity kinematics", "sourceLineKind": "mcode", "visitCount": 4, "producedMotionCount": 0, "operations": [ "switchkins-identity" ] }, { "sourceFile": "helix_bc.ngc", "line": 13, "statement": "g0 x[#<_x> - #] ;adjust for radius", "sourceLineKind": "motion", "visitCount": 4, "producedMotionCount": 4, "operations": [ "rapid-radius-adjust" ] }, { "sourceFile": "helix_bc.ngc", "line": 14, "statement": "g10l20p0 x0y0 z# b0 c0 ;new g54", "sourceLineKind": "offset", "visitCount": 4, "producedMotionCount": 0, "operations": [ "set-g54-offset" ] }, { "sourceFile": "helix_bc.ngc", "line": 15, "statement": "M428 ;XYZBC", "sourceLineKind": "mcode", "visitCount": 4, "producedMotionCount": 0, "operations": [ "switchkins-tcp-xyzbc" ] }, { "sourceFile": "helix_bc.ngc", "line": 16, "statement": "g0b#c# ;exercise b,c", "sourceLineKind": "motion", "visitCount": 4, "producedMotionCount": 4, "operations": [ "rapid-bc-orient" ] }, { "sourceFile": "helix_bc.ngc", "line": 17, "statement": "f# g2i#z# p# ;helix", "sourceLineKind": "motion", "visitCount": 4, "producedMotionCount": 4, "operations": [ "feed-helix" ] }, { "sourceFile": "helix_bc.ngc", "line": 18, "statement": "M429 ;Identity kinematics", "sourceLineKind": "mcode", "visitCount": 4, "producedMotionCount": 0, "operations": [ "switchkins-identity" ] }, { "sourceFile": "helix_bc.ngc", "line": 19, "statement": "g0 x0 y0 z# b0 c0 ;return to start", "sourceLineKind": "motion", "visitCount": 4, "producedMotionCount": 4, "operations": [ "rapid-return-to-start" ] }, { "sourceFile": "helix_bc.ngc", "line": 20, "statement": "g0 x[#<_x> + #] ;adjust restore", "sourceLineKind": "motion", "visitCount": 4, "producedMotionCount": 4, "operations": [ "rapid-radius-restore" ] }, { "sourceFile": "helix_bc.ngc", "line": 21, "statement": "M428 ;XYZBC", "sourceLineKind": "mcode", "visitCount": 4, "producedMotionCount": 0, "operations": [ "switchkins-tcp-xyzbc" ] }, { "sourceFile": "helix_bc.ngc", "line": 22, "statement": "oendsub", "sourceLineKind": "subroutine-boundary", "visitCount": 4, "producedMotionCount": 0, "operations": [ "subroutine-exit" ] } ], "executionSteps": [ { "stepIndex": 0, "sourceFile": "xyzbc_switchkins.ngc", "line": 1, "statement": "; zmax zmin r frate n a b c dist", "callDepth": 0, "callStack": [], "executed": false, "sourceLineKind": "comment", "result": { "status": "ok", "operation": "comment", "sourceLineKind": "comment", "executed": false, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 1, "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "statement": "o call [10] [5] [10][1000][3][0][20][45][20]", "callDepth": 0, "callStack": [], "executed": true, "sourceLineKind": "call", "result": { "status": "ok", "operation": "call-subroutine", "sourceLineKind": "call", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 0, "notes": [] } }, { "stepIndex": 2, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 1, "statement": "; ngcgui-compatible subroutine", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": false, "sourceLineKind": "comment", "result": { "status": "ok", "operation": "comment", "sourceLineKind": "comment", "executed": false, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 3, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 2, "statement": "(info: helix in each quadrant at angles B,C)", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": false, "sourceLineKind": "comment", "result": { "status": "ok", "operation": "info-comment", "sourceLineKind": "comment", "executed": false, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 4, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 3, "statement": "osub", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "subroutine-boundary", "result": { "status": "ok", "operation": "subroutine-enter", "sourceLineKind": "subroutine-boundary", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 5, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 4, "statement": "# = #1 (=10)", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": {}, "parametersChanged": { "zmax": 10 }, "parametersAfter": { "zmax": 10 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 6, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 5, "statement": "# = #2 (= 5)", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10 }, "parametersChanged": { "zmin": 5 }, "parametersAfter": { "zmax": 10, "zmin": 5 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 7, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 6, "statement": "# = #3 (=10 radius)", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5 }, "parametersChanged": { "r": 10 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 8, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 7, "statement": "# = #4 (=1000 feedrate)", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10 }, "parametersChanged": { "frate": 1000 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 9, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 8, "statement": "# = #5 (=3 n circles)", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000 }, "parametersChanged": { "n": 3 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 10, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 9, "statement": "# = #6 (=0 A angle NA)", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3 }, "parametersChanged": { "a": 0 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 11, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 10, "statement": "# = #7 (=30 B angle)", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0 }, "parametersChanged": { "b": 20 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 12, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 11, "statement": "# = #8 (=45 C angle)", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20 }, "parametersChanged": { "c": 45 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 13, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 12, "statement": "# = #9 (=20 distance)", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45 }, "parametersChanged": { "dist": 20 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 14, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 14, "statement": "; quadrant I", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": false, "sourceLineKind": "comment", "result": { "status": "ok", "operation": "comment-quadrant-I", "sourceLineKind": "comment", "executed": false, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 15, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 15, "statement": "M429 ;Identity kinematics", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-identity", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "identity", "code": "M429" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 1, "notes": [] } }, { "stepIndex": 16, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 16, "statement": "g53 g0 x0y0 z# b0 c0 ;MACHINE coordinates", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-machine-reset", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 0, "motionType": "rapid", "feed": 2100, "startJoint": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": 0, "y": 0, "z": 10 }, "endTcp": { "x": 0, "y": 0, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 2, "notes": [] } }, { "stepIndex": 17, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 17, "statement": "g10l20p0 x0y0 z# b0 c0 ;new g54", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "offset", "result": { "status": "ok", "operation": "set-g54-offset", "sourceLineKind": "offset", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "workOffsetAfter": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "modalChange": { "coordinateSystem": "G54", "code": "G10 L20 P0" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 3, "notes": [] } }, { "stepIndex": 18, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 18, "statement": "g0 x+# y+# z# ;move to pattern center position", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-to-quadrant-center", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 1, "motionType": "rapid", "feed": 2100, "startJoint": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": 20, "y": 20, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": 0, "y": 0, "z": 10 }, "endTcp": { "x": 20, "y": 20, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 4, "notes": [] } }, { "stepIndex": 19, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "statement": "o call [#][#][#][#][#][#][#][#]", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "call", "result": { "status": "ok", "operation": "call-subroutine", "sourceLineKind": "call", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 5, "notes": [] } }, { "stepIndex": 20, "sourceFile": "helix_bc.ngc", "line": 1, "statement": "; helix using switchkins (xyzbc) b,c angles", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": false, "sourceLineKind": "comment", "result": { "status": "ok", "operation": "comment", "sourceLineKind": "comment", "executed": false, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 21, "sourceFile": "helix_bc.ngc", "line": 2, "statement": "osub", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": true, "sourceLineKind": "subroutine-boundary", "result": { "status": "ok", "operation": "subroutine-enter", "sourceLineKind": "subroutine-boundary", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 22, "sourceFile": "helix_bc.ngc", "line": 3, "statement": "# = #1 (=10)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "zmax": 10 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 23, "sourceFile": "helix_bc.ngc", "line": 4, "statement": "# = #2 (= 5)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "zmin": 5 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 24, "sourceFile": "helix_bc.ngc", "line": 5, "statement": "# = #3 (=10)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "r": 10 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 25, "sourceFile": "helix_bc.ngc", "line": 6, "statement": "# = #4 (=1000)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "frate": 1000 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 26, "sourceFile": "helix_bc.ngc", "line": 7, "statement": "# = #5 (=3)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "n": 3 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 27, "sourceFile": "helix_bc.ngc", "line": 8, "statement": "# = #6 (=0 NA)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "a": 0 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 28, "sourceFile": "helix_bc.ngc", "line": 9, "statement": "# = #7 (=45)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "b": 20 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 29, "sourceFile": "helix_bc.ngc", "line": 10, "statement": "# = #8 (=20)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "c": 45 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 30, "sourceFile": "helix_bc.ngc", "line": 12, "statement": "M429 ;Identity kinematics", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-identity", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "identity", "code": "M429" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 6, "notes": [] } }, { "stepIndex": 31, "sourceFile": "helix_bc.ngc", "line": 13, "statement": "g0 x[#<_x> - #] ;adjust for radius", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-radius-adjust", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 2, "motionType": "rapid", "feed": 2100, "startJoint": { "x": 20, "y": 20, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": 10, "y": 20, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": 20, "y": 20, "z": 10 }, "endTcp": { "x": 10, "y": 20, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 7, "notes": [] } }, { "stepIndex": 32, "sourceFile": "helix_bc.ngc", "line": 14, "statement": "g10l20p0 x0y0 z# b0 c0 ;new g54", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": true, "sourceLineKind": "offset", "result": { "status": "ok", "operation": "set-g54-offset", "sourceLineKind": "offset", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "workOffsetAfter": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "modalChange": { "coordinateSystem": "G54", "code": "G10 L20 P0" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 8, "notes": [] } }, { "stepIndex": 33, "sourceFile": "helix_bc.ngc", "line": 15, "statement": "M428 ;XYZBC", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-tcp-xyzbc", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "tcp-xyzbc", "code": "M428" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 9, "notes": [] } }, { "stepIndex": 34, "sourceFile": "helix_bc.ngc", "line": 16, "statement": "g0b#c# ;exercise b,c", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-bc-orient", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 3, "motionType": "rapid", "feed": 2100, "startJoint": { "x": 10, "y": 20, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": 10, "y": 20, "z": 10, "b": 20, "c": 45 }, "startTcp": { "x": 10, "y": 20, "z": 10 }, "endTcp": { "x": 10, "y": 20, "z": 10 }, "endToolAxis": { "i": 0.24184476264797528, "j": 0.24184476264797522, "k": 0.9396926207859084 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 10, "notes": [] } }, { "stepIndex": 35, "sourceFile": "helix_bc.ngc", "line": 17, "statement": "f# g2i#z# p# ;helix", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "feed-helix", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 4, "motionType": "arc", "feed": 1000, "startJoint": { "x": 10, "y": 20, "z": 10, "b": 20, "c": 45 }, "endJoint": { "x": 10, "y": 20, "z": 5, "b": 20, "c": 45 }, "startTcp": { "x": 10, "y": 20, "z": 10 }, "endTcp": { "x": 10, "y": 20, "z": 5 }, "endToolAxis": { "i": 0.24184476264797528, "j": 0.24184476264797522, "k": 0.9396926207859084 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 1000, "actualMmPerMin": 1000, "overridePercent": 100 }, "cutting": { "active": true, "cuttingSpeedMmPerMin": 1000 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 11, "notes": [] } }, { "stepIndex": 36, "sourceFile": "helix_bc.ngc", "line": 18, "statement": "M429 ;Identity kinematics", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-identity", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "identity", "code": "M429" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 1000, "actualMmPerMin": 1000, "overridePercent": 100 }, "cutting": { "active": true, "cuttingSpeedMmPerMin": 1000 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 1000, "actualMmPerMin": 1000, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 12, "notes": [] } }, { "stepIndex": 37, "sourceFile": "helix_bc.ngc", "line": 19, "statement": "g0 x0 y0 z# b0 c0 ;return to start", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-return-to-start", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 5, "motionType": "rapid", "feed": 2100, "startJoint": { "x": 10, "y": 20, "z": 5, "b": 20, "c": 45 }, "endJoint": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": 10, "y": 20, "z": 5 }, "endTcp": { "x": 0, "y": 0, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 1000, "actualMmPerMin": 1000, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 13, "notes": [] } }, { "stepIndex": 38, "sourceFile": "helix_bc.ngc", "line": 20, "statement": "g0 x[#<_x> + #] ;adjust restore", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-radius-restore", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 6, "motionType": "rapid", "feed": 2100, "startJoint": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": 10, "y": 0, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": 0, "y": 0, "z": 10 }, "endTcp": { "x": 10, "y": 0, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 14, "notes": [] } }, { "stepIndex": 39, "sourceFile": "helix_bc.ngc", "line": 21, "statement": "M428 ;XYZBC", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-tcp-xyzbc", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "tcp-xyzbc", "code": "M428" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 15, "notes": [] } }, { "stepIndex": 40, "sourceFile": "helix_bc.ngc", "line": 22, "statement": "oendsub", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": true, "sourceLineKind": "subroutine-boundary", "result": { "status": "ok", "operation": "subroutine-exit", "sourceLineKind": "subroutine-boundary", "executed": true, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 41, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 21, "statement": "; quadrant II", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": false, "sourceLineKind": "comment", "result": { "status": "ok", "operation": "comment-quadrant-II", "sourceLineKind": "comment", "executed": false, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 42, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 22, "statement": "M429 ;Identity kinematics", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-identity", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "identity", "code": "M429" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 16, "notes": [] } }, { "stepIndex": 43, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 23, "statement": "g53 g0 x0y0 z# b0 c0", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-machine-reset", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 7, "motionType": "rapid", "feed": 2100, "startJoint": { "x": 10, "y": 0, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": 10, "y": 0, "z": 10 }, "endTcp": { "x": 0, "y": 0, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 17, "notes": [] } }, { "stepIndex": 44, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 24, "statement": "g10l20p0 x0y0 z# b0 c0", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "offset", "result": { "status": "ok", "operation": "set-g54-offset", "sourceLineKind": "offset", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "workOffsetAfter": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "modalChange": { "coordinateSystem": "G54", "code": "G10 L20 P0" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 18, "notes": [] } }, { "stepIndex": 45, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 25, "statement": "g0 x-# y+# z#", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-to-quadrant-center", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 8, "motionType": "rapid", "feed": 2100, "startJoint": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": -20, "y": 20, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": 0, "y": 0, "z": 10 }, "endTcp": { "x": -20, "y": 20, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 19, "notes": [] } }, { "stepIndex": 46, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "statement": "o call [#][#][#][#][#][#][#][#]", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "call", "result": { "status": "ok", "operation": "call-subroutine", "sourceLineKind": "call", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 20, "notes": [] } }, { "stepIndex": 47, "sourceFile": "helix_bc.ngc", "line": 1, "statement": "; helix using switchkins (xyzbc) b,c angles", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": false, "sourceLineKind": "comment", "result": { "status": "ok", "operation": "comment", "sourceLineKind": "comment", "executed": false, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 48, "sourceFile": "helix_bc.ngc", "line": 2, "statement": "osub", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": true, "sourceLineKind": "subroutine-boundary", "result": { "status": "ok", "operation": "subroutine-enter", "sourceLineKind": "subroutine-boundary", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 49, "sourceFile": "helix_bc.ngc", "line": 3, "statement": "# = #1 (=10)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "zmax": 10 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 50, "sourceFile": "helix_bc.ngc", "line": 4, "statement": "# = #2 (= 5)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "zmin": 5 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 51, "sourceFile": "helix_bc.ngc", "line": 5, "statement": "# = #3 (=10)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "r": 10 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 52, "sourceFile": "helix_bc.ngc", "line": 6, "statement": "# = #4 (=1000)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "frate": 1000 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 53, "sourceFile": "helix_bc.ngc", "line": 7, "statement": "# = #5 (=3)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "n": 3 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 54, "sourceFile": "helix_bc.ngc", "line": 8, "statement": "# = #6 (=0 NA)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "a": 0 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 55, "sourceFile": "helix_bc.ngc", "line": 9, "statement": "# = #7 (=45)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "b": 20 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 56, "sourceFile": "helix_bc.ngc", "line": 10, "statement": "# = #8 (=20)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "c": 45 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 57, "sourceFile": "helix_bc.ngc", "line": 12, "statement": "M429 ;Identity kinematics", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-identity", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "identity", "code": "M429" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 21, "notes": [] } }, { "stepIndex": 58, "sourceFile": "helix_bc.ngc", "line": 13, "statement": "g0 x[#<_x> - #] ;adjust for radius", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-radius-adjust", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 9, "motionType": "rapid", "feed": 2100, "startJoint": { "x": -20, "y": 20, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": -30, "y": 20, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": -20, "y": 20, "z": 10 }, "endTcp": { "x": -30, "y": 20, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 22, "notes": [] } }, { "stepIndex": 59, "sourceFile": "helix_bc.ngc", "line": 14, "statement": "g10l20p0 x0y0 z# b0 c0 ;new g54", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": true, "sourceLineKind": "offset", "result": { "status": "ok", "operation": "set-g54-offset", "sourceLineKind": "offset", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "workOffsetAfter": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "modalChange": { "coordinateSystem": "G54", "code": "G10 L20 P0" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 23, "notes": [] } }, { "stepIndex": 60, "sourceFile": "helix_bc.ngc", "line": 15, "statement": "M428 ;XYZBC", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-tcp-xyzbc", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "tcp-xyzbc", "code": "M428" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 24, "notes": [] } }, { "stepIndex": 61, "sourceFile": "helix_bc.ngc", "line": 16, "statement": "g0b#c# ;exercise b,c", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-bc-orient", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 10, "motionType": "rapid", "feed": 2100, "startJoint": { "x": -30, "y": 20, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": -30, "y": 20, "z": 10, "b": 20, "c": 45 }, "startTcp": { "x": -30, "y": 20, "z": 10 }, "endTcp": { "x": -30, "y": 20, "z": 10 }, "endToolAxis": { "i": 0.24184476264797528, "j": 0.24184476264797522, "k": 0.9396926207859084 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 25, "notes": [] } }, { "stepIndex": 62, "sourceFile": "helix_bc.ngc", "line": 17, "statement": "f# g2i#z# p# ;helix", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "feed-helix", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 11, "motionType": "arc", "feed": 1000, "startJoint": { "x": -30, "y": 20, "z": 10, "b": 20, "c": 45 }, "endJoint": { "x": -30, "y": 20, "z": 5, "b": 20, "c": 45 }, "startTcp": { "x": -30, "y": 20, "z": 10 }, "endTcp": { "x": -30, "y": 20, "z": 5 }, "endToolAxis": { "i": 0.24184476264797528, "j": 0.24184476264797522, "k": 0.9396926207859084 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 1000, "actualMmPerMin": 1000, "overridePercent": 100 }, "cutting": { "active": true, "cuttingSpeedMmPerMin": 1000 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 26, "notes": [] } }, { "stepIndex": 63, "sourceFile": "helix_bc.ngc", "line": 18, "statement": "M429 ;Identity kinematics", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-identity", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "identity", "code": "M429" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 1000, "actualMmPerMin": 1000, "overridePercent": 100 }, "cutting": { "active": true, "cuttingSpeedMmPerMin": 1000 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 1000, "actualMmPerMin": 1000, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 27, "notes": [] } }, { "stepIndex": 64, "sourceFile": "helix_bc.ngc", "line": 19, "statement": "g0 x0 y0 z# b0 c0 ;return to start", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-return-to-start", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 12, "motionType": "rapid", "feed": 2100, "startJoint": { "x": -30, "y": 20, "z": 5, "b": 20, "c": 45 }, "endJoint": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": -30, "y": 20, "z": 5 }, "endTcp": { "x": 0, "y": 0, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 1000, "actualMmPerMin": 1000, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 28, "notes": [] } }, { "stepIndex": 65, "sourceFile": "helix_bc.ngc", "line": 20, "statement": "g0 x[#<_x> + #] ;adjust restore", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-radius-restore", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 13, "motionType": "rapid", "feed": 2100, "startJoint": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": 10, "y": 0, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": 0, "y": 0, "z": 10 }, "endTcp": { "x": 10, "y": 0, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 29, "notes": [] } }, { "stepIndex": 66, "sourceFile": "helix_bc.ngc", "line": 21, "statement": "M428 ;XYZBC", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-tcp-xyzbc", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "tcp-xyzbc", "code": "M428" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 30, "notes": [] } }, { "stepIndex": 67, "sourceFile": "helix_bc.ngc", "line": 22, "statement": "oendsub", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": true, "sourceLineKind": "subroutine-boundary", "result": { "status": "ok", "operation": "subroutine-exit", "sourceLineKind": "subroutine-boundary", "executed": true, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 68, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 28, "statement": "; quadrant III", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": false, "sourceLineKind": "comment", "result": { "status": "ok", "operation": "comment-quadrant-III", "sourceLineKind": "comment", "executed": false, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 69, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 29, "statement": "M429 ;Identity kinematics", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-identity", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "identity", "code": "M429" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 31, "notes": [] } }, { "stepIndex": 70, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 30, "statement": "g53 g0 x0y0 z# b0 c0", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-machine-reset", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 14, "motionType": "rapid", "feed": 2100, "startJoint": { "x": 10, "y": 0, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": 10, "y": 0, "z": 10 }, "endTcp": { "x": 0, "y": 0, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 32, "notes": [] } }, { "stepIndex": 71, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 31, "statement": "g10l20p0 x0y0 z# b0 c0", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "offset", "result": { "status": "ok", "operation": "set-g54-offset", "sourceLineKind": "offset", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "workOffsetAfter": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "modalChange": { "coordinateSystem": "G54", "code": "G10 L20 P0" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 33, "notes": [] } }, { "stepIndex": 72, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 32, "statement": "g0 x-# y-# z#", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-to-quadrant-center", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 15, "motionType": "rapid", "feed": 2100, "startJoint": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": -20, "y": -20, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": 0, "y": 0, "z": 10 }, "endTcp": { "x": -20, "y": -20, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 34, "notes": [] } }, { "stepIndex": 73, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "statement": "o call [#][#][#][#][#][#][#][#]", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "call", "result": { "status": "ok", "operation": "call-subroutine", "sourceLineKind": "call", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 35, "notes": [] } }, { "stepIndex": 74, "sourceFile": "helix_bc.ngc", "line": 1, "statement": "; helix using switchkins (xyzbc) b,c angles", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": false, "sourceLineKind": "comment", "result": { "status": "ok", "operation": "comment", "sourceLineKind": "comment", "executed": false, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 75, "sourceFile": "helix_bc.ngc", "line": 2, "statement": "osub", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": true, "sourceLineKind": "subroutine-boundary", "result": { "status": "ok", "operation": "subroutine-enter", "sourceLineKind": "subroutine-boundary", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 76, "sourceFile": "helix_bc.ngc", "line": 3, "statement": "# = #1 (=10)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "zmax": 10 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 77, "sourceFile": "helix_bc.ngc", "line": 4, "statement": "# = #2 (= 5)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "zmin": 5 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 78, "sourceFile": "helix_bc.ngc", "line": 5, "statement": "# = #3 (=10)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "r": 10 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 79, "sourceFile": "helix_bc.ngc", "line": 6, "statement": "# = #4 (=1000)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "frate": 1000 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 80, "sourceFile": "helix_bc.ngc", "line": 7, "statement": "# = #5 (=3)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "n": 3 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 81, "sourceFile": "helix_bc.ngc", "line": 8, "statement": "# = #6 (=0 NA)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "a": 0 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 82, "sourceFile": "helix_bc.ngc", "line": 9, "statement": "# = #7 (=45)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "b": 20 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 83, "sourceFile": "helix_bc.ngc", "line": 10, "statement": "# = #8 (=20)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "c": 45 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 84, "sourceFile": "helix_bc.ngc", "line": 12, "statement": "M429 ;Identity kinematics", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-identity", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "identity", "code": "M429" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 36, "notes": [] } }, { "stepIndex": 85, "sourceFile": "helix_bc.ngc", "line": 13, "statement": "g0 x[#<_x> - #] ;adjust for radius", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-radius-adjust", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 16, "motionType": "rapid", "feed": 2100, "startJoint": { "x": -20, "y": -20, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": -30, "y": -20, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": -20, "y": -20, "z": 10 }, "endTcp": { "x": -30, "y": -20, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 37, "notes": [] } }, { "stepIndex": 86, "sourceFile": "helix_bc.ngc", "line": 14, "statement": "g10l20p0 x0y0 z# b0 c0 ;new g54", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": true, "sourceLineKind": "offset", "result": { "status": "ok", "operation": "set-g54-offset", "sourceLineKind": "offset", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "workOffsetAfter": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "modalChange": { "coordinateSystem": "G54", "code": "G10 L20 P0" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 38, "notes": [] } }, { "stepIndex": 87, "sourceFile": "helix_bc.ngc", "line": 15, "statement": "M428 ;XYZBC", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-tcp-xyzbc", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "tcp-xyzbc", "code": "M428" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 39, "notes": [] } }, { "stepIndex": 88, "sourceFile": "helix_bc.ngc", "line": 16, "statement": "g0b#c# ;exercise b,c", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-bc-orient", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 17, "motionType": "rapid", "feed": 2100, "startJoint": { "x": -30, "y": -20, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": -30, "y": -20, "z": 10, "b": 20, "c": 45 }, "startTcp": { "x": -30, "y": -20, "z": 10 }, "endTcp": { "x": -30, "y": -20, "z": 10 }, "endToolAxis": { "i": 0.24184476264797528, "j": 0.24184476264797522, "k": 0.9396926207859084 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 40, "notes": [] } }, { "stepIndex": 89, "sourceFile": "helix_bc.ngc", "line": 17, "statement": "f# g2i#z# p# ;helix", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "feed-helix", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 18, "motionType": "arc", "feed": 1000, "startJoint": { "x": -30, "y": -20, "z": 10, "b": 20, "c": 45 }, "endJoint": { "x": -30, "y": -20, "z": 5, "b": 20, "c": 45 }, "startTcp": { "x": -30, "y": -20, "z": 10 }, "endTcp": { "x": -30, "y": -20, "z": 5 }, "endToolAxis": { "i": 0.24184476264797528, "j": 0.24184476264797522, "k": 0.9396926207859084 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 1000, "actualMmPerMin": 1000, "overridePercent": 100 }, "cutting": { "active": true, "cuttingSpeedMmPerMin": 1000 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 41, "notes": [] } }, { "stepIndex": 90, "sourceFile": "helix_bc.ngc", "line": 18, "statement": "M429 ;Identity kinematics", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-identity", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "identity", "code": "M429" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 1000, "actualMmPerMin": 1000, "overridePercent": 100 }, "cutting": { "active": true, "cuttingSpeedMmPerMin": 1000 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 1000, "actualMmPerMin": 1000, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 42, "notes": [] } }, { "stepIndex": 91, "sourceFile": "helix_bc.ngc", "line": 19, "statement": "g0 x0 y0 z# b0 c0 ;return to start", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-return-to-start", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 19, "motionType": "rapid", "feed": 2100, "startJoint": { "x": -30, "y": -20, "z": 5, "b": 20, "c": 45 }, "endJoint": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": -30, "y": -20, "z": 5 }, "endTcp": { "x": 0, "y": 0, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 1000, "actualMmPerMin": 1000, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 43, "notes": [] } }, { "stepIndex": 92, "sourceFile": "helix_bc.ngc", "line": 20, "statement": "g0 x[#<_x> + #] ;adjust restore", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-radius-restore", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 20, "motionType": "rapid", "feed": 2100, "startJoint": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": 10, "y": 0, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": 0, "y": 0, "z": 10 }, "endTcp": { "x": 10, "y": 0, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 44, "notes": [] } }, { "stepIndex": 93, "sourceFile": "helix_bc.ngc", "line": 21, "statement": "M428 ;XYZBC", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-tcp-xyzbc", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "tcp-xyzbc", "code": "M428" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 45, "notes": [] } }, { "stepIndex": 94, "sourceFile": "helix_bc.ngc", "line": 22, "statement": "oendsub", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": true, "sourceLineKind": "subroutine-boundary", "result": { "status": "ok", "operation": "subroutine-exit", "sourceLineKind": "subroutine-boundary", "executed": true, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 95, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 35, "statement": "; quadrant IV", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": false, "sourceLineKind": "comment", "result": { "status": "ok", "operation": "comment-quadrant-IV", "sourceLineKind": "comment", "executed": false, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 96, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 36, "statement": "M429 ;Identity kinematics", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-identity", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "identity", "code": "M429" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 46, "notes": [] } }, { "stepIndex": 97, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 37, "statement": "g53 g0 x0y0 z# b0 c0", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-machine-reset", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 21, "motionType": "rapid", "feed": 2100, "startJoint": { "x": 10, "y": 0, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": 10, "y": 0, "z": 10 }, "endTcp": { "x": 0, "y": 0, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 47, "notes": [] } }, { "stepIndex": 98, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 38, "statement": "g10l20p0 x0y0 z# b0 c0", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "offset", "result": { "status": "ok", "operation": "set-g54-offset", "sourceLineKind": "offset", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "workOffsetAfter": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "modalChange": { "coordinateSystem": "G54", "code": "G10 L20 P0" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 48, "notes": [] } }, { "stepIndex": 99, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 39, "statement": "g0 x+# y-# z#", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-to-quadrant-center", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 22, "motionType": "rapid", "feed": 2100, "startJoint": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": 20, "y": -20, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": 0, "y": 0, "z": 10 }, "endTcp": { "x": 20, "y": -20, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 49, "notes": [] } }, { "stepIndex": 100, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "statement": "o call [#][#][#][#][#][#][#][#]", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "call", "result": { "status": "ok", "operation": "call-subroutine", "sourceLineKind": "call", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 50, "notes": [] } }, { "stepIndex": 101, "sourceFile": "helix_bc.ngc", "line": 1, "statement": "; helix using switchkins (xyzbc) b,c angles", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": false, "sourceLineKind": "comment", "result": { "status": "ok", "operation": "comment", "sourceLineKind": "comment", "executed": false, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 102, "sourceFile": "helix_bc.ngc", "line": 2, "statement": "osub", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": true, "sourceLineKind": "subroutine-boundary", "result": { "status": "ok", "operation": "subroutine-enter", "sourceLineKind": "subroutine-boundary", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 103, "sourceFile": "helix_bc.ngc", "line": 3, "statement": "# = #1 (=10)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "zmax": 10 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 104, "sourceFile": "helix_bc.ngc", "line": 4, "statement": "# = #2 (= 5)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "zmin": 5 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 105, "sourceFile": "helix_bc.ngc", "line": 5, "statement": "# = #3 (=10)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "r": 10 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 106, "sourceFile": "helix_bc.ngc", "line": 6, "statement": "# = #4 (=1000)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "frate": 1000 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 107, "sourceFile": "helix_bc.ngc", "line": 7, "statement": "# = #5 (=3)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "n": 3 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 108, "sourceFile": "helix_bc.ngc", "line": 8, "statement": "# = #6 (=0 NA)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "a": 0 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 109, "sourceFile": "helix_bc.ngc", "line": 9, "statement": "# = #7 (=45)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "b": 20 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 110, "sourceFile": "helix_bc.ngc", "line": 10, "statement": "# = #8 (=20)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "c": 45 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 111, "sourceFile": "helix_bc.ngc", "line": 12, "statement": "M429 ;Identity kinematics", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-identity", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "identity", "code": "M429" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 51, "notes": [] } }, { "stepIndex": 112, "sourceFile": "helix_bc.ngc", "line": 13, "statement": "g0 x[#<_x> - #] ;adjust for radius", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-radius-adjust", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 23, "motionType": "rapid", "feed": 2100, "startJoint": { "x": 20, "y": -20, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": 10, "y": -20, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": 20, "y": -20, "z": 10 }, "endTcp": { "x": 10, "y": -20, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 52, "notes": [] } }, { "stepIndex": 113, "sourceFile": "helix_bc.ngc", "line": 14, "statement": "g10l20p0 x0y0 z# b0 c0 ;new g54", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": true, "sourceLineKind": "offset", "result": { "status": "ok", "operation": "set-g54-offset", "sourceLineKind": "offset", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "workOffsetAfter": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "modalChange": { "coordinateSystem": "G54", "code": "G10 L20 P0" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 53, "notes": [] } }, { "stepIndex": 114, "sourceFile": "helix_bc.ngc", "line": 15, "statement": "M428 ;XYZBC", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-tcp-xyzbc", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "tcp-xyzbc", "code": "M428" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 54, "notes": [] } }, { "stepIndex": 115, "sourceFile": "helix_bc.ngc", "line": 16, "statement": "g0b#c# ;exercise b,c", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-bc-orient", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 24, "motionType": "rapid", "feed": 2100, "startJoint": { "x": 10, "y": -20, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": 10, "y": -20, "z": 10, "b": 20, "c": 45 }, "startTcp": { "x": 10, "y": -20, "z": 10 }, "endTcp": { "x": 10, "y": -20, "z": 10 }, "endToolAxis": { "i": 0.24184476264797528, "j": 0.24184476264797522, "k": 0.9396926207859084 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 55, "notes": [] } }, { "stepIndex": 116, "sourceFile": "helix_bc.ngc", "line": 17, "statement": "f# g2i#z# p# ;helix", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "feed-helix", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 25, "motionType": "arc", "feed": 1000, "startJoint": { "x": 10, "y": -20, "z": 10, "b": 20, "c": 45 }, "endJoint": { "x": 10, "y": -20, "z": 5, "b": 20, "c": 45 }, "startTcp": { "x": 10, "y": -20, "z": 10 }, "endTcp": { "x": 10, "y": -20, "z": 5 }, "endToolAxis": { "i": 0.24184476264797528, "j": 0.24184476264797522, "k": 0.9396926207859084 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 1000, "actualMmPerMin": 1000, "overridePercent": 100 }, "cutting": { "active": true, "cuttingSpeedMmPerMin": 1000 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 56, "notes": [] } }, { "stepIndex": 117, "sourceFile": "helix_bc.ngc", "line": 18, "statement": "M429 ;Identity kinematics", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-identity", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "identity", "code": "M429" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 1000, "actualMmPerMin": 1000, "overridePercent": 100 }, "cutting": { "active": true, "cuttingSpeedMmPerMin": 1000 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 1000, "actualMmPerMin": 1000, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 57, "notes": [] } }, { "stepIndex": 118, "sourceFile": "helix_bc.ngc", "line": 19, "statement": "g0 x0 y0 z# b0 c0 ;return to start", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-return-to-start", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 26, "motionType": "rapid", "feed": 2100, "startJoint": { "x": 10, "y": -20, "z": 5, "b": 20, "c": 45 }, "endJoint": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": 10, "y": -20, "z": 5 }, "endTcp": { "x": 0, "y": 0, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 1000, "actualMmPerMin": 1000, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 58, "notes": [] } }, { "stepIndex": 119, "sourceFile": "helix_bc.ngc", "line": 20, "statement": "g0 x[#<_x> + #] ;adjust restore", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-radius-restore", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 27, "motionType": "rapid", "feed": 2100, "startJoint": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": 10, "y": 0, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": 0, "y": 0, "z": 10 }, "endTcp": { "x": 10, "y": 0, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 59, "notes": [] } }, { "stepIndex": 120, "sourceFile": "helix_bc.ngc", "line": 21, "statement": "M428 ;XYZBC", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-tcp-xyzbc", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "tcp-xyzbc", "code": "M428" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 60, "notes": [] } }, { "stepIndex": 121, "sourceFile": "helix_bc.ngc", "line": 22, "statement": "oendsub", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": true, "sourceLineKind": "subroutine-boundary", "result": { "status": "ok", "operation": "subroutine-exit", "sourceLineKind": "subroutine-boundary", "executed": true, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 122, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 42, "statement": ";final position", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": false, "sourceLineKind": "comment", "result": { "status": "ok", "operation": "comment-final-position", "sourceLineKind": "comment", "executed": false, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 123, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 43, "statement": "M429 ;Identity kinematics", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-identity", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "identity", "code": "M429" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 61, "notes": [] } }, { "stepIndex": 124, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 44, "statement": "g53 g0 x0y0 z# ;MACHINE coordinates", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-final-machine-reset", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 28, "motionType": "rapid", "feed": 2100, "startJoint": { "x": 10, "y": 0, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": 10, "y": 0, "z": 10 }, "endTcp": { "x": 0, "y": 0, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 62, "notes": [] } }, { "stepIndex": 125, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 45, "statement": "g10l20p0 x0y0 z# ;new g54", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "offset", "result": { "status": "ok", "operation": "set-g54-offset", "sourceLineKind": "offset", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "workOffsetAfter": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "modalChange": { "coordinateSystem": "G54", "code": "G10 L20 P0" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 63, "notes": [] } }, { "stepIndex": 126, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 47, "statement": "oendsub", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "subroutine-boundary", "result": { "status": "ok", "operation": "subroutine-exit", "sourceLineKind": "subroutine-boundary", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 127, "sourceFile": "xyzbc_switchkins.ngc", "line": 3, "statement": "m2", "callDepth": 0, "callStack": [], "executed": true, "sourceLineKind": "program-end", "result": { "status": "ok", "operation": "program-end", "sourceLineKind": "program-end", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "program": "ended", "code": "M2" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } } ], "summary": { "motionStepCount": 29, "switchkinsStepCount": 21, "parameterAssignmentStepCount": 41, "workOffsetStepCount": 9, "callStepCount": 5, "noMotionStepCount": 99, "finalJoint": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "finalKinematics": "identity" }, "semanticBoundary": "complete_gcode_execution_process_expanded_from_linuxcnc_xyzbc_trt_sources" }, "currentVelocity": 996.516, "operatorMessage": "task/HAL status tick 149", "pauseButton": { "action": "pause-resume", "paused": "false", "title": "Pause program", "ariaPressed": "false" }, "canvasDataset": { "width": 383, "height": 572, "threeToolAxis": "{\"x\":0.242,\"y\":0.242,\"z\":0.94}", "threeToolGlyphAxis": "{\"x\":0.242,\"y\":0.242,\"z\":0.94}" }, "canvasToolhead": { "x": 0.022, "y": 0.01, "z": 0.008 }, "canvasVismachPins": null, "programPaneDataset": { "region": "program", "liveSourceFile": "helix_bc.ngc", "liveSourceLine": "17", "liveSampleIndex": "150", "liveExecutedSamples": "151", "gcodeExecutionStatus": "ok", "gcodeExecutionStepCount": "128", "gcodeMotionStepCount": "29", "gcodeParameterStepCount": "41", "gcodeCallDepth": "2" }, "processMonitorDataset": { "linuxcncProcessMonitor": "", "sourceMode": "linuxcnc-task-motion-hal-wasm", "taskHalReady": "true", "activeLine": "17", "liveSourceFile": "helix_bc.ngc", "liveSourceLine": "17", "liveSampleIndex": "150" } }, "after": { "runState": "paused", "taskState": "on", "powerOn": true, "estopActive": false, "allHomed": true, "mode": "auto", "interpState": "paused", "taskPaused": true, "motionPaused": true, "activeLine": 17, "sampleIndex": 152, "programExecutionSourceMode": "linuxcnc-task-motion-hal-wasm", "programUiExecution": { "apiName": "web-rtcp-5axis-ui-gcode-live-execution", "status": "paused", "source": "programAxisPreviewPath.samples", "samplePeriodMs": 50, "sampleIndex": 152, "sampleCount": 1300, "executedSampleCount": 153, "timeMs": 7600, "activeProgram": "configs/sim/axis/vismach/5axis/table-rotary-tilting/demos/xyzbc_switchkins.ngc", "sourceFile": "helix_bc.ngc", "line": 17, "statement": "f# g2i#z# p#", "operation": "feed-helix", "executionIndex": 11, "gcodeStepIndex": 35, "segmentIndex": 4, "motionType": "arc", "activeKinematics": "tcp-xyzbc", "joint": { "x": 23.5858, "y": 10.665, "z": 7.81938, "a": 0, "b": 20, "c": 45 }, "tcp": { "x": 3.2662448870797647, "y": -9.654555112920232, "z": -71.13265430581124 }, "toolAxis": { "i": 0.24184476264797528, "j": 0.24184476264797522, "k": 0.9396926207859084 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "machineState": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 1000, "actualMmPerMin": 1000, "overridePercent": 100 }, "cutting": { "active": true, "cuttingSpeedMmPerMin": 1000 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "semanticBoundary": "ui_updates_from_real_expanded_linuxcnc_gcode_sample_stream" }, "currentVelocity": 0, "operatorMessage": "task/HAL paused status monitor running" } }, { "label": "第一次暂停保持 5 秒", "at": "2026-07-09T17:32:31.665Z", "durationMs": 5498, "state": { "runState": "paused", "taskState": "on", "powerOn": true, "estopActive": false, "allHomed": true, "mode": "auto", "interpState": "paused", "taskPaused": true, "motionPaused": true, "activeLine": 17, "sampleIndex": 152, "programExecutionSourceMode": "linuxcnc-task-motion-hal-wasm", "programUiExecution": { "apiName": "web-rtcp-5axis-ui-gcode-live-execution", "status": "paused", "source": "programAxisPreviewPath.samples", "samplePeriodMs": 50, "sampleIndex": 152, "sampleCount": 1300, "executedSampleCount": 153, "timeMs": 7600, "activeProgram": "configs/sim/axis/vismach/5axis/table-rotary-tilting/demos/xyzbc_switchkins.ngc", "sourceFile": "helix_bc.ngc", "line": 17, "statement": "f# g2i#z# p#", "operation": "feed-helix", "executionIndex": 11, "gcodeStepIndex": 35, "segmentIndex": 4, "motionType": "arc", "activeKinematics": "tcp-xyzbc", "joint": { "x": 23.5858, "y": 10.665, "z": 7.81938, "a": 0, "b": 20, "c": 45 }, "tcp": { "x": 3.2662448870797647, "y": -9.654555112920232, "z": -71.13265430581124 }, "toolAxis": { "i": 0.24184476264797528, "j": 0.24184476264797522, "k": 0.9396926207859084 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "machineState": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 1000, "actualMmPerMin": 1000, "overridePercent": 100 }, "cutting": { "active": true, "cuttingSpeedMmPerMin": 1000 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "semanticBoundary": "ui_updates_from_real_expanded_linuxcnc_gcode_sample_stream" }, "currentVelocity": 0, "operatorMessage": "task/HAL status tick 121" }, "frozenPosition": { "axisPose": { "x": 23.5858, "y": 10.665, "z": 7.81938, "a": 0, "b": 20, "c": 45 }, "dro": { "x": 23.5858, "y": 10.665, "z": 7.81938, "a": 0, "b": 20, "c": 45, "tcpX": 3.2662448870797647, "tcpY": -9.654555112920232, "tcpZ": -71.13265430581124, "dtgX": 0, "dtgY": 0, "dtgZ": 0 }, "canvasToolhead": { "x": 0.003, "y": -0.01, "z": -0.071 }, "canvasVismachPins": null }, "movedDuringHold": null }, { "label": "第一次继续执行", "selector": "[data-tool-id=\"tbtn_pause\"]", "clickMethod": "dom-element-click", "at": "2026-07-09T17:32:34.544Z", "elapsedMs": 2783, "before": { "machineProfile": "xyzbc-trt", "selectedGcodeSourceRel": "configs/sim/axis/vismach/5axis/table-rotary-tilting/demos/xyzbc_switchkins.ngc", "taskHalLoaded": true, "taskHalRuntimeReadiness": { "apiName": "web-rtcp-5axis-linuxcnc-task-hal-runtime-readiness", "loaded": true, "semanticBoundary": "linuxcnc_task_motion_hal_wasm_simulation_runtime", "sdkSemanticBoundary": "linuxcnc_task_motion_hal_wasm_phase4_minimal", "executionContext": "direct", "workerUrl": null, "taskRuntimeReady": true, "motionRuntimeReady": true, "halRuntimeReady": true, "halSyncReady": true, "nativeTaskReady": true, "nativeHalSyncReady": true, "hardwareDrive": false, "hostRealtimeKernel": false, "externalUserMProcessReady": false }, "runState": "paused", "taskState": "on", "powerOn": true, "estopActive": false, "allHomed": true, "mode": "auto", "interpState": "paused", "interpResumeState": "reading", "taskPaused": true, "motionPaused": true, "rtcpState": "on", "kinsType": "identity", "activeLine": 17, "programExecutionSourceMode": "linuxcnc-task-motion-hal-wasm", "programExecutionSampleIndex": 152, "programRuntimeFeedback": { "apiName": "web-rtcp-5axis-program-runtime-feedback", "sourceMode": "linuxcnc-task-motion-hal-wasm", "semanticBoundary": "linuxcnc_task_motion_hal_wasm_simulation_runtime", "sampleIndex": 152, "motionIndex": 4, "line": 17, "motionProgramLine": 17, "halProgramLine": 17, "activeLineSource": "emc-status", "activeLineHalSynced": true, "type": "TASK_MOTION", "paused": true, "timeSeconds": 9.48, "axisPose": { "x": 23.5858, "y": 10.665, "z": 7.81938, "a": 0, "b": 20, "c": 45 }, "currentVelocityMmPerMin": 0, "requestedVelocityMmPerMin": 0, "distanceToGo": 1, "dtg": { "x": 0, "y": 0, "z": 0 }, "queueDepth": 0, "activeDepth": 1, "cycle": 9480, "taskCycle": 948, "halChangedPinCount": 0, "tcp": { "x": 3.2662448870797647, "y": -9.654555112920232, "z": -71.13265430581124 } }, "axisPose": { "x": 23.5858, "y": 10.665, "z": 7.81938, "a": 0, "b": 20, "c": 45 }, "dro": { "x": 23.5858, "y": 10.665, "z": 7.81938, "a": 0, "b": 20, "c": 45, "tcpX": 3.2662448870797647, "tcpY": -9.654555112920232, "tcpZ": -71.13265430581124, "dtgX": 0, "dtgY": 0, "dtgZ": 0 }, "programUiExecution": { "apiName": "web-rtcp-5axis-ui-gcode-live-execution", "status": "paused", "source": "programAxisPreviewPath.samples", "samplePeriodMs": 50, "sampleIndex": 152, "sampleCount": 1300, "executedSampleCount": 153, "timeMs": 7600, "activeProgram": "configs/sim/axis/vismach/5axis/table-rotary-tilting/demos/xyzbc_switchkins.ngc", "sourceFile": "helix_bc.ngc", "line": 17, "statement": "f# g2i#z# p#", "operation": "feed-helix", "executionIndex": 11, "gcodeStepIndex": 35, "segmentIndex": 4, "motionType": "arc", "activeKinematics": "tcp-xyzbc", "joint": { "x": 23.5858, "y": 10.665, "z": 7.81938, "a": 0, "b": 20, "c": 45 }, "tcp": { "x": 3.2662448870797647, "y": -9.654555112920232, "z": -71.13265430581124 }, "toolAxis": { "i": 0.24184476264797528, "j": 0.24184476264797522, "k": 0.9396926207859084 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "machineState": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 1000, "actualMmPerMin": 1000, "overridePercent": 100 }, "cutting": { "active": true, "cuttingSpeedMmPerMin": 1000 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "semanticBoundary": "ui_updates_from_real_expanded_linuxcnc_gcode_sample_stream" }, "samplePeriodMs": 50, "sampleCount": 1300, "gcodeExecutionProcess": { "apiName": "linuxcnc-xyzbc-trt-gcode-complete-execution-process", "status": "ok", "program": "xyzbc_switchkins.ngc", "sourceFiles": [ { "sourceFile": "xyzbc_switchkins.ngc", "lineCount": 3 }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "lineCount": 41 }, { "sourceFile": "helix_bc.ngc", "lineCount": 21 } ], "executionStepCount": 128, "sourceLineCoverage": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 1, "statement": "; zmax zmin r frate n a b c dist", "sourceLineKind": "comment", "visitCount": 1, "producedMotionCount": 0, "operations": [ "comment" ] }, { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "statement": "o call [10] [5] [10][1000][3][0][20][45][20]", "sourceLineKind": "call", "visitCount": 1, "producedMotionCount": 0, "operations": [ "call-subroutine" ] }, { "sourceFile": "xyzbc_switchkins.ngc", "line": 3, "statement": "m2", "sourceLineKind": "mcode", "visitCount": 1, "producedMotionCount": 0, "operations": [ "program-end" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 1, "statement": "; ngcgui-compatible subroutine", "sourceLineKind": "comment", "visitCount": 1, "producedMotionCount": 0, "operations": [ "comment" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 2, "statement": "(info: helix in each quadrant at angles B,C)", "sourceLineKind": "comment", "visitCount": 1, "producedMotionCount": 0, "operations": [ "info-comment" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 3, "statement": "osub", "sourceLineKind": "subroutine-boundary", "visitCount": 1, "producedMotionCount": 0, "operations": [ "subroutine-enter" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 4, "statement": "# = #1 (=10)", "sourceLineKind": "assignment", "visitCount": 1, "producedMotionCount": 0, "operations": [ "parameter-assignment" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 5, "statement": "# = #2 (= 5)", "sourceLineKind": "assignment", "visitCount": 1, "producedMotionCount": 0, "operations": [ "parameter-assignment" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 6, "statement": "# = #3 (=10 radius)", "sourceLineKind": "assignment", "visitCount": 1, "producedMotionCount": 0, "operations": [ "parameter-assignment" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 7, "statement": "# = #4 (=1000 feedrate)", "sourceLineKind": "assignment", "visitCount": 1, "producedMotionCount": 0, "operations": [ "parameter-assignment" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 8, "statement": "# = #5 (=3 n circles)", "sourceLineKind": "assignment", "visitCount": 1, "producedMotionCount": 0, "operations": [ "parameter-assignment" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 9, "statement": "# = #6 (=0 A angle NA)", "sourceLineKind": "assignment", "visitCount": 1, "producedMotionCount": 0, "operations": [ "parameter-assignment" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 10, "statement": "# = #7 (=30 B angle)", "sourceLineKind": "assignment", "visitCount": 1, "producedMotionCount": 0, "operations": [ "parameter-assignment" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 11, "statement": "# = #8 (=45 C angle)", "sourceLineKind": "assignment", "visitCount": 1, "producedMotionCount": 0, "operations": [ "parameter-assignment" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 12, "statement": "# = #9 (=20 distance)", "sourceLineKind": "assignment", "visitCount": 1, "producedMotionCount": 0, "operations": [ "parameter-assignment" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 14, "statement": "; quadrant I", "sourceLineKind": "comment", "visitCount": 1, "producedMotionCount": 0, "operations": [ "comment-quadrant-I" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 15, "statement": "M429 ;Identity kinematics", "sourceLineKind": "mcode", "visitCount": 1, "producedMotionCount": 0, "operations": [ "switchkins-identity" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 16, "statement": "g53 g0 x0y0 z# b0 c0 ;MACHINE coordinates", "sourceLineKind": "motion", "visitCount": 1, "producedMotionCount": 1, "operations": [ "rapid-machine-reset" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 17, "statement": "g10l20p0 x0y0 z# b0 c0 ;new g54", "sourceLineKind": "offset", "visitCount": 1, "producedMotionCount": 0, "operations": [ "set-g54-offset" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 18, "statement": "g0 x+# y+# z# ;move to pattern center position", "sourceLineKind": "motion", "visitCount": 1, "producedMotionCount": 1, "operations": [ "rapid-to-quadrant-center" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "statement": "o call [#][#][#][#][#][#][#][#]", "sourceLineKind": "call", "visitCount": 1, "producedMotionCount": 0, "operations": [ "call-subroutine" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 21, "statement": "; quadrant II", "sourceLineKind": "comment", "visitCount": 1, "producedMotionCount": 0, "operations": [ "comment-quadrant-II" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 22, "statement": "M429 ;Identity kinematics", "sourceLineKind": "mcode", "visitCount": 1, "producedMotionCount": 0, "operations": [ "switchkins-identity" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 23, "statement": "g53 g0 x0y0 z# b0 c0", "sourceLineKind": "motion", "visitCount": 1, "producedMotionCount": 1, "operations": [ "rapid-machine-reset" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 24, "statement": "g10l20p0 x0y0 z# b0 c0", "sourceLineKind": "offset", "visitCount": 1, "producedMotionCount": 0, "operations": [ "set-g54-offset" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 25, "statement": "g0 x-# y+# z#", "sourceLineKind": "motion", "visitCount": 1, "producedMotionCount": 1, "operations": [ "rapid-to-quadrant-center" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "statement": "o call [#][#][#][#][#][#][#][#]", "sourceLineKind": "call", "visitCount": 1, "producedMotionCount": 0, "operations": [ "call-subroutine" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 28, "statement": "; quadrant III", "sourceLineKind": "comment", "visitCount": 1, "producedMotionCount": 0, "operations": [ "comment-quadrant-III" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 29, "statement": "M429 ;Identity kinematics", "sourceLineKind": "mcode", "visitCount": 1, "producedMotionCount": 0, "operations": [ "switchkins-identity" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 30, "statement": "g53 g0 x0y0 z# b0 c0", "sourceLineKind": "motion", "visitCount": 1, "producedMotionCount": 1, "operations": [ "rapid-machine-reset" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 31, "statement": "g10l20p0 x0y0 z# b0 c0", "sourceLineKind": "offset", "visitCount": 1, "producedMotionCount": 0, "operations": [ "set-g54-offset" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 32, "statement": "g0 x-# y-# z#", "sourceLineKind": "motion", "visitCount": 1, "producedMotionCount": 1, "operations": [ "rapid-to-quadrant-center" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "statement": "o call [#][#][#][#][#][#][#][#]", "sourceLineKind": "call", "visitCount": 1, "producedMotionCount": 0, "operations": [ "call-subroutine" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 35, "statement": "; quadrant IV", "sourceLineKind": "comment", "visitCount": 1, "producedMotionCount": 0, "operations": [ "comment-quadrant-IV" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 36, "statement": "M429 ;Identity kinematics", "sourceLineKind": "mcode", "visitCount": 1, "producedMotionCount": 0, "operations": [ "switchkins-identity" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 37, "statement": "g53 g0 x0y0 z# b0 c0", "sourceLineKind": "motion", "visitCount": 1, "producedMotionCount": 1, "operations": [ "rapid-machine-reset" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 38, "statement": "g10l20p0 x0y0 z# b0 c0", "sourceLineKind": "offset", "visitCount": 1, "producedMotionCount": 0, "operations": [ "set-g54-offset" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 39, "statement": "g0 x+# y-# z#", "sourceLineKind": "motion", "visitCount": 1, "producedMotionCount": 1, "operations": [ "rapid-to-quadrant-center" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "statement": "o call [#][#][#][#][#][#][#][#]", "sourceLineKind": "call", "visitCount": 1, "producedMotionCount": 0, "operations": [ "call-subroutine" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 42, "statement": ";final position", "sourceLineKind": "comment", "visitCount": 1, "producedMotionCount": 0, "operations": [ "comment-final-position" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 43, "statement": "M429 ;Identity kinematics", "sourceLineKind": "mcode", "visitCount": 1, "producedMotionCount": 0, "operations": [ "switchkins-identity" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 44, "statement": "g53 g0 x0y0 z# ;MACHINE coordinates", "sourceLineKind": "motion", "visitCount": 1, "producedMotionCount": 1, "operations": [ "rapid-final-machine-reset" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 45, "statement": "g10l20p0 x0y0 z# ;new g54", "sourceLineKind": "offset", "visitCount": 1, "producedMotionCount": 0, "operations": [ "set-g54-offset" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 47, "statement": "oendsub", "sourceLineKind": "subroutine-boundary", "visitCount": 1, "producedMotionCount": 0, "operations": [ "subroutine-exit" ] }, { "sourceFile": "helix_bc.ngc", "line": 1, "statement": "; helix using switchkins (xyzbc) b,c angles", "sourceLineKind": "comment", "visitCount": 4, "producedMotionCount": 0, "operations": [ "comment" ] }, { "sourceFile": "helix_bc.ngc", "line": 2, "statement": "osub", "sourceLineKind": "subroutine-boundary", "visitCount": 4, "producedMotionCount": 0, "operations": [ "subroutine-enter" ] }, { "sourceFile": "helix_bc.ngc", "line": 3, "statement": "# = #1 (=10)", "sourceLineKind": "assignment", "visitCount": 4, "producedMotionCount": 0, "operations": [ "parameter-assignment" ] }, { "sourceFile": "helix_bc.ngc", "line": 4, "statement": "# = #2 (= 5)", "sourceLineKind": "assignment", "visitCount": 4, "producedMotionCount": 0, "operations": [ "parameter-assignment" ] }, { "sourceFile": "helix_bc.ngc", "line": 5, "statement": "# = #3 (=10)", "sourceLineKind": "assignment", "visitCount": 4, "producedMotionCount": 0, "operations": [ "parameter-assignment" ] }, { "sourceFile": "helix_bc.ngc", "line": 6, "statement": "# = #4 (=1000)", "sourceLineKind": "assignment", "visitCount": 4, "producedMotionCount": 0, "operations": [ "parameter-assignment" ] }, { "sourceFile": "helix_bc.ngc", "line": 7, "statement": "# = #5 (=3)", "sourceLineKind": "assignment", "visitCount": 4, "producedMotionCount": 0, "operations": [ "parameter-assignment" ] }, { "sourceFile": "helix_bc.ngc", "line": 8, "statement": "# = #6 (=0 NA)", "sourceLineKind": "assignment", "visitCount": 4, "producedMotionCount": 0, "operations": [ "parameter-assignment" ] }, { "sourceFile": "helix_bc.ngc", "line": 9, "statement": "# = #7 (=45)", "sourceLineKind": "assignment", "visitCount": 4, "producedMotionCount": 0, "operations": [ "parameter-assignment" ] }, { "sourceFile": "helix_bc.ngc", "line": 10, "statement": "# = #8 (=20)", "sourceLineKind": "assignment", "visitCount": 4, "producedMotionCount": 0, "operations": [ "parameter-assignment" ] }, { "sourceFile": "helix_bc.ngc", "line": 12, "statement": "M429 ;Identity kinematics", "sourceLineKind": "mcode", "visitCount": 4, "producedMotionCount": 0, "operations": [ "switchkins-identity" ] }, { "sourceFile": "helix_bc.ngc", "line": 13, "statement": "g0 x[#<_x> - #] ;adjust for radius", "sourceLineKind": "motion", "visitCount": 4, "producedMotionCount": 4, "operations": [ "rapid-radius-adjust" ] }, { "sourceFile": "helix_bc.ngc", "line": 14, "statement": "g10l20p0 x0y0 z# b0 c0 ;new g54", "sourceLineKind": "offset", "visitCount": 4, "producedMotionCount": 0, "operations": [ "set-g54-offset" ] }, { "sourceFile": "helix_bc.ngc", "line": 15, "statement": "M428 ;XYZBC", "sourceLineKind": "mcode", "visitCount": 4, "producedMotionCount": 0, "operations": [ "switchkins-tcp-xyzbc" ] }, { "sourceFile": "helix_bc.ngc", "line": 16, "statement": "g0b#c# ;exercise b,c", "sourceLineKind": "motion", "visitCount": 4, "producedMotionCount": 4, "operations": [ "rapid-bc-orient" ] }, { "sourceFile": "helix_bc.ngc", "line": 17, "statement": "f# g2i#z# p# ;helix", "sourceLineKind": "motion", "visitCount": 4, "producedMotionCount": 4, "operations": [ "feed-helix" ] }, { "sourceFile": "helix_bc.ngc", "line": 18, "statement": "M429 ;Identity kinematics", "sourceLineKind": "mcode", "visitCount": 4, "producedMotionCount": 0, "operations": [ "switchkins-identity" ] }, { "sourceFile": "helix_bc.ngc", "line": 19, "statement": "g0 x0 y0 z# b0 c0 ;return to start", "sourceLineKind": "motion", "visitCount": 4, "producedMotionCount": 4, "operations": [ "rapid-return-to-start" ] }, { "sourceFile": "helix_bc.ngc", "line": 20, "statement": "g0 x[#<_x> + #] ;adjust restore", "sourceLineKind": "motion", "visitCount": 4, "producedMotionCount": 4, "operations": [ "rapid-radius-restore" ] }, { "sourceFile": "helix_bc.ngc", "line": 21, "statement": "M428 ;XYZBC", "sourceLineKind": "mcode", "visitCount": 4, "producedMotionCount": 0, "operations": [ "switchkins-tcp-xyzbc" ] }, { "sourceFile": "helix_bc.ngc", "line": 22, "statement": "oendsub", "sourceLineKind": "subroutine-boundary", "visitCount": 4, "producedMotionCount": 0, "operations": [ "subroutine-exit" ] } ], "executionSteps": [ { "stepIndex": 0, "sourceFile": "xyzbc_switchkins.ngc", "line": 1, "statement": "; zmax zmin r frate n a b c dist", "callDepth": 0, "callStack": [], "executed": false, "sourceLineKind": "comment", "result": { "status": "ok", "operation": "comment", "sourceLineKind": "comment", "executed": false, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 1, "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "statement": "o call [10] [5] [10][1000][3][0][20][45][20]", "callDepth": 0, "callStack": [], "executed": true, "sourceLineKind": "call", "result": { "status": "ok", "operation": "call-subroutine", "sourceLineKind": "call", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 0, "notes": [] } }, { "stepIndex": 2, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 1, "statement": "; ngcgui-compatible subroutine", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": false, "sourceLineKind": "comment", "result": { "status": "ok", "operation": "comment", "sourceLineKind": "comment", "executed": false, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 3, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 2, "statement": "(info: helix in each quadrant at angles B,C)", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": false, "sourceLineKind": "comment", "result": { "status": "ok", "operation": "info-comment", "sourceLineKind": "comment", "executed": false, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 4, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 3, "statement": "osub", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "subroutine-boundary", "result": { "status": "ok", "operation": "subroutine-enter", "sourceLineKind": "subroutine-boundary", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 5, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 4, "statement": "# = #1 (=10)", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": {}, "parametersChanged": { "zmax": 10 }, "parametersAfter": { "zmax": 10 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 6, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 5, "statement": "# = #2 (= 5)", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10 }, "parametersChanged": { "zmin": 5 }, "parametersAfter": { "zmax": 10, "zmin": 5 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 7, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 6, "statement": "# = #3 (=10 radius)", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5 }, "parametersChanged": { "r": 10 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 8, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 7, "statement": "# = #4 (=1000 feedrate)", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10 }, "parametersChanged": { "frate": 1000 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 9, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 8, "statement": "# = #5 (=3 n circles)", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000 }, "parametersChanged": { "n": 3 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 10, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 9, "statement": "# = #6 (=0 A angle NA)", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3 }, "parametersChanged": { "a": 0 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 11, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 10, "statement": "# = #7 (=30 B angle)", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0 }, "parametersChanged": { "b": 20 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 12, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 11, "statement": "# = #8 (=45 C angle)", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20 }, "parametersChanged": { "c": 45 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 13, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 12, "statement": "# = #9 (=20 distance)", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45 }, "parametersChanged": { "dist": 20 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 14, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 14, "statement": "; quadrant I", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": false, "sourceLineKind": "comment", "result": { "status": "ok", "operation": "comment-quadrant-I", "sourceLineKind": "comment", "executed": false, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 15, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 15, "statement": "M429 ;Identity kinematics", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-identity", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "identity", "code": "M429" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 1, "notes": [] } }, { "stepIndex": 16, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 16, "statement": "g53 g0 x0y0 z# b0 c0 ;MACHINE coordinates", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-machine-reset", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 0, "motionType": "rapid", "feed": 2100, "startJoint": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": 0, "y": 0, "z": 10 }, "endTcp": { "x": 0, "y": 0, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 2, "notes": [] } }, { "stepIndex": 17, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 17, "statement": "g10l20p0 x0y0 z# b0 c0 ;new g54", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "offset", "result": { "status": "ok", "operation": "set-g54-offset", "sourceLineKind": "offset", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "workOffsetAfter": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "modalChange": { "coordinateSystem": "G54", "code": "G10 L20 P0" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 3, "notes": [] } }, { "stepIndex": 18, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 18, "statement": "g0 x+# y+# z# ;move to pattern center position", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-to-quadrant-center", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 1, "motionType": "rapid", "feed": 2100, "startJoint": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": 20, "y": 20, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": 0, "y": 0, "z": 10 }, "endTcp": { "x": 20, "y": 20, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 4, "notes": [] } }, { "stepIndex": 19, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "statement": "o call [#][#][#][#][#][#][#][#]", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "call", "result": { "status": "ok", "operation": "call-subroutine", "sourceLineKind": "call", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 5, "notes": [] } }, { "stepIndex": 20, "sourceFile": "helix_bc.ngc", "line": 1, "statement": "; helix using switchkins (xyzbc) b,c angles", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": false, "sourceLineKind": "comment", "result": { "status": "ok", "operation": "comment", "sourceLineKind": "comment", "executed": false, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 21, "sourceFile": "helix_bc.ngc", "line": 2, "statement": "osub", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": true, "sourceLineKind": "subroutine-boundary", "result": { "status": "ok", "operation": "subroutine-enter", "sourceLineKind": "subroutine-boundary", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 22, "sourceFile": "helix_bc.ngc", "line": 3, "statement": "# = #1 (=10)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "zmax": 10 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 23, "sourceFile": "helix_bc.ngc", "line": 4, "statement": "# = #2 (= 5)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "zmin": 5 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 24, "sourceFile": "helix_bc.ngc", "line": 5, "statement": "# = #3 (=10)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "r": 10 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 25, "sourceFile": "helix_bc.ngc", "line": 6, "statement": "# = #4 (=1000)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "frate": 1000 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 26, "sourceFile": "helix_bc.ngc", "line": 7, "statement": "# = #5 (=3)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "n": 3 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 27, "sourceFile": "helix_bc.ngc", "line": 8, "statement": "# = #6 (=0 NA)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "a": 0 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 28, "sourceFile": "helix_bc.ngc", "line": 9, "statement": "# = #7 (=45)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "b": 20 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 29, "sourceFile": "helix_bc.ngc", "line": 10, "statement": "# = #8 (=20)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "c": 45 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 30, "sourceFile": "helix_bc.ngc", "line": 12, "statement": "M429 ;Identity kinematics", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-identity", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "identity", "code": "M429" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 6, "notes": [] } }, { "stepIndex": 31, "sourceFile": "helix_bc.ngc", "line": 13, "statement": "g0 x[#<_x> - #] ;adjust for radius", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-radius-adjust", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 2, "motionType": "rapid", "feed": 2100, "startJoint": { "x": 20, "y": 20, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": 10, "y": 20, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": 20, "y": 20, "z": 10 }, "endTcp": { "x": 10, "y": 20, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 7, "notes": [] } }, { "stepIndex": 32, "sourceFile": "helix_bc.ngc", "line": 14, "statement": "g10l20p0 x0y0 z# b0 c0 ;new g54", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": true, "sourceLineKind": "offset", "result": { "status": "ok", "operation": "set-g54-offset", "sourceLineKind": "offset", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "workOffsetAfter": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "modalChange": { "coordinateSystem": "G54", "code": "G10 L20 P0" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 8, "notes": [] } }, { "stepIndex": 33, "sourceFile": "helix_bc.ngc", "line": 15, "statement": "M428 ;XYZBC", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-tcp-xyzbc", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "tcp-xyzbc", "code": "M428" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 9, "notes": [] } }, { "stepIndex": 34, "sourceFile": "helix_bc.ngc", "line": 16, "statement": "g0b#c# ;exercise b,c", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-bc-orient", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 3, "motionType": "rapid", "feed": 2100, "startJoint": { "x": 10, "y": 20, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": 10, "y": 20, "z": 10, "b": 20, "c": 45 }, "startTcp": { "x": 10, "y": 20, "z": 10 }, "endTcp": { "x": 10, "y": 20, "z": 10 }, "endToolAxis": { "i": 0.24184476264797528, "j": 0.24184476264797522, "k": 0.9396926207859084 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 10, "notes": [] } }, { "stepIndex": 35, "sourceFile": "helix_bc.ngc", "line": 17, "statement": "f# g2i#z# p# ;helix", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "feed-helix", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 4, "motionType": "arc", "feed": 1000, "startJoint": { "x": 10, "y": 20, "z": 10, "b": 20, "c": 45 }, "endJoint": { "x": 10, "y": 20, "z": 5, "b": 20, "c": 45 }, "startTcp": { "x": 10, "y": 20, "z": 10 }, "endTcp": { "x": 10, "y": 20, "z": 5 }, "endToolAxis": { "i": 0.24184476264797528, "j": 0.24184476264797522, "k": 0.9396926207859084 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 1000, "actualMmPerMin": 1000, "overridePercent": 100 }, "cutting": { "active": true, "cuttingSpeedMmPerMin": 1000 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 11, "notes": [] } }, { "stepIndex": 36, "sourceFile": "helix_bc.ngc", "line": 18, "statement": "M429 ;Identity kinematics", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-identity", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "identity", "code": "M429" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 1000, "actualMmPerMin": 1000, "overridePercent": 100 }, "cutting": { "active": true, "cuttingSpeedMmPerMin": 1000 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 1000, "actualMmPerMin": 1000, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 12, "notes": [] } }, { "stepIndex": 37, "sourceFile": "helix_bc.ngc", "line": 19, "statement": "g0 x0 y0 z# b0 c0 ;return to start", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-return-to-start", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 5, "motionType": "rapid", "feed": 2100, "startJoint": { "x": 10, "y": 20, "z": 5, "b": 20, "c": 45 }, "endJoint": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": 10, "y": 20, "z": 5 }, "endTcp": { "x": 0, "y": 0, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 1000, "actualMmPerMin": 1000, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 13, "notes": [] } }, { "stepIndex": 38, "sourceFile": "helix_bc.ngc", "line": 20, "statement": "g0 x[#<_x> + #] ;adjust restore", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-radius-restore", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 6, "motionType": "rapid", "feed": 2100, "startJoint": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": 10, "y": 0, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": 0, "y": 0, "z": 10 }, "endTcp": { "x": 10, "y": 0, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 14, "notes": [] } }, { "stepIndex": 39, "sourceFile": "helix_bc.ngc", "line": 21, "statement": "M428 ;XYZBC", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-tcp-xyzbc", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "tcp-xyzbc", "code": "M428" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 15, "notes": [] } }, { "stepIndex": 40, "sourceFile": "helix_bc.ngc", "line": 22, "statement": "oendsub", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": true, "sourceLineKind": "subroutine-boundary", "result": { "status": "ok", "operation": "subroutine-exit", "sourceLineKind": "subroutine-boundary", "executed": true, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 41, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 21, "statement": "; quadrant II", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": false, "sourceLineKind": "comment", "result": { "status": "ok", "operation": "comment-quadrant-II", "sourceLineKind": "comment", "executed": false, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 42, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 22, "statement": "M429 ;Identity kinematics", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-identity", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "identity", "code": "M429" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 16, "notes": [] } }, { "stepIndex": 43, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 23, "statement": "g53 g0 x0y0 z# b0 c0", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-machine-reset", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 7, "motionType": "rapid", "feed": 2100, "startJoint": { "x": 10, "y": 0, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": 10, "y": 0, "z": 10 }, "endTcp": { "x": 0, "y": 0, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 17, "notes": [] } }, { "stepIndex": 44, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 24, "statement": "g10l20p0 x0y0 z# b0 c0", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "offset", "result": { "status": "ok", "operation": "set-g54-offset", "sourceLineKind": "offset", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "workOffsetAfter": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "modalChange": { "coordinateSystem": "G54", "code": "G10 L20 P0" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 18, "notes": [] } }, { "stepIndex": 45, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 25, "statement": "g0 x-# y+# z#", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-to-quadrant-center", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 8, "motionType": "rapid", "feed": 2100, "startJoint": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": -20, "y": 20, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": 0, "y": 0, "z": 10 }, "endTcp": { "x": -20, "y": 20, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 19, "notes": [] } }, { "stepIndex": 46, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "statement": "o call [#][#][#][#][#][#][#][#]", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "call", "result": { "status": "ok", "operation": "call-subroutine", "sourceLineKind": "call", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 20, "notes": [] } }, { "stepIndex": 47, "sourceFile": "helix_bc.ngc", "line": 1, "statement": "; helix using switchkins (xyzbc) b,c angles", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": false, "sourceLineKind": "comment", "result": { "status": "ok", "operation": "comment", "sourceLineKind": "comment", "executed": false, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 48, "sourceFile": "helix_bc.ngc", "line": 2, "statement": "osub", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": true, "sourceLineKind": "subroutine-boundary", "result": { "status": "ok", "operation": "subroutine-enter", "sourceLineKind": "subroutine-boundary", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 49, "sourceFile": "helix_bc.ngc", "line": 3, "statement": "# = #1 (=10)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "zmax": 10 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 50, "sourceFile": "helix_bc.ngc", "line": 4, "statement": "# = #2 (= 5)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "zmin": 5 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 51, "sourceFile": "helix_bc.ngc", "line": 5, "statement": "# = #3 (=10)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "r": 10 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 52, "sourceFile": "helix_bc.ngc", "line": 6, "statement": "# = #4 (=1000)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "frate": 1000 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 53, "sourceFile": "helix_bc.ngc", "line": 7, "statement": "# = #5 (=3)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "n": 3 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 54, "sourceFile": "helix_bc.ngc", "line": 8, "statement": "# = #6 (=0 NA)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "a": 0 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 55, "sourceFile": "helix_bc.ngc", "line": 9, "statement": "# = #7 (=45)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "b": 20 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 56, "sourceFile": "helix_bc.ngc", "line": 10, "statement": "# = #8 (=20)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "c": 45 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 57, "sourceFile": "helix_bc.ngc", "line": 12, "statement": "M429 ;Identity kinematics", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-identity", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "identity", "code": "M429" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 21, "notes": [] } }, { "stepIndex": 58, "sourceFile": "helix_bc.ngc", "line": 13, "statement": "g0 x[#<_x> - #] ;adjust for radius", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-radius-adjust", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 9, "motionType": "rapid", "feed": 2100, "startJoint": { "x": -20, "y": 20, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": -30, "y": 20, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": -20, "y": 20, "z": 10 }, "endTcp": { "x": -30, "y": 20, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 22, "notes": [] } }, { "stepIndex": 59, "sourceFile": "helix_bc.ngc", "line": 14, "statement": "g10l20p0 x0y0 z# b0 c0 ;new g54", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": true, "sourceLineKind": "offset", "result": { "status": "ok", "operation": "set-g54-offset", "sourceLineKind": "offset", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "workOffsetAfter": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "modalChange": { "coordinateSystem": "G54", "code": "G10 L20 P0" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 23, "notes": [] } }, { "stepIndex": 60, "sourceFile": "helix_bc.ngc", "line": 15, "statement": "M428 ;XYZBC", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-tcp-xyzbc", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "tcp-xyzbc", "code": "M428" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 24, "notes": [] } }, { "stepIndex": 61, "sourceFile": "helix_bc.ngc", "line": 16, "statement": "g0b#c# ;exercise b,c", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-bc-orient", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 10, "motionType": "rapid", "feed": 2100, "startJoint": { "x": -30, "y": 20, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": -30, "y": 20, "z": 10, "b": 20, "c": 45 }, "startTcp": { "x": -30, "y": 20, "z": 10 }, "endTcp": { "x": -30, "y": 20, "z": 10 }, "endToolAxis": { "i": 0.24184476264797528, "j": 0.24184476264797522, "k": 0.9396926207859084 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 25, "notes": [] } }, { "stepIndex": 62, "sourceFile": "helix_bc.ngc", "line": 17, "statement": "f# g2i#z# p# ;helix", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "feed-helix", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 11, "motionType": "arc", "feed": 1000, "startJoint": { "x": -30, "y": 20, "z": 10, "b": 20, "c": 45 }, "endJoint": { "x": -30, "y": 20, "z": 5, "b": 20, "c": 45 }, "startTcp": { "x": -30, "y": 20, "z": 10 }, "endTcp": { "x": -30, "y": 20, "z": 5 }, "endToolAxis": { "i": 0.24184476264797528, "j": 0.24184476264797522, "k": 0.9396926207859084 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 1000, "actualMmPerMin": 1000, "overridePercent": 100 }, "cutting": { "active": true, "cuttingSpeedMmPerMin": 1000 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 26, "notes": [] } }, { "stepIndex": 63, "sourceFile": "helix_bc.ngc", "line": 18, "statement": "M429 ;Identity kinematics", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-identity", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "identity", "code": "M429" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 1000, "actualMmPerMin": 1000, "overridePercent": 100 }, "cutting": { "active": true, "cuttingSpeedMmPerMin": 1000 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 1000, "actualMmPerMin": 1000, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 27, "notes": [] } }, { "stepIndex": 64, "sourceFile": "helix_bc.ngc", "line": 19, "statement": "g0 x0 y0 z# b0 c0 ;return to start", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-return-to-start", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 12, "motionType": "rapid", "feed": 2100, "startJoint": { "x": -30, "y": 20, "z": 5, "b": 20, "c": 45 }, "endJoint": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": -30, "y": 20, "z": 5 }, "endTcp": { "x": 0, "y": 0, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 1000, "actualMmPerMin": 1000, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 28, "notes": [] } }, { "stepIndex": 65, "sourceFile": "helix_bc.ngc", "line": 20, "statement": "g0 x[#<_x> + #] ;adjust restore", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-radius-restore", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 13, "motionType": "rapid", "feed": 2100, "startJoint": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": 10, "y": 0, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": 0, "y": 0, "z": 10 }, "endTcp": { "x": 10, "y": 0, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 29, "notes": [] } }, { "stepIndex": 66, "sourceFile": "helix_bc.ngc", "line": 21, "statement": "M428 ;XYZBC", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-tcp-xyzbc", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "tcp-xyzbc", "code": "M428" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 30, "notes": [] } }, { "stepIndex": 67, "sourceFile": "helix_bc.ngc", "line": 22, "statement": "oendsub", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": true, "sourceLineKind": "subroutine-boundary", "result": { "status": "ok", "operation": "subroutine-exit", "sourceLineKind": "subroutine-boundary", "executed": true, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 68, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 28, "statement": "; quadrant III", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": false, "sourceLineKind": "comment", "result": { "status": "ok", "operation": "comment-quadrant-III", "sourceLineKind": "comment", "executed": false, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 69, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 29, "statement": "M429 ;Identity kinematics", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-identity", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "identity", "code": "M429" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 31, "notes": [] } }, { "stepIndex": 70, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 30, "statement": "g53 g0 x0y0 z# b0 c0", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-machine-reset", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 14, "motionType": "rapid", "feed": 2100, "startJoint": { "x": 10, "y": 0, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": 10, "y": 0, "z": 10 }, "endTcp": { "x": 0, "y": 0, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 32, "notes": [] } }, { "stepIndex": 71, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 31, "statement": "g10l20p0 x0y0 z# b0 c0", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "offset", "result": { "status": "ok", "operation": "set-g54-offset", "sourceLineKind": "offset", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "workOffsetAfter": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "modalChange": { "coordinateSystem": "G54", "code": "G10 L20 P0" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 33, "notes": [] } }, { "stepIndex": 72, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 32, "statement": "g0 x-# y-# z#", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-to-quadrant-center", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 15, "motionType": "rapid", "feed": 2100, "startJoint": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": -20, "y": -20, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": 0, "y": 0, "z": 10 }, "endTcp": { "x": -20, "y": -20, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 34, "notes": [] } }, { "stepIndex": 73, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "statement": "o call [#][#][#][#][#][#][#][#]", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "call", "result": { "status": "ok", "operation": "call-subroutine", "sourceLineKind": "call", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 35, "notes": [] } }, { "stepIndex": 74, "sourceFile": "helix_bc.ngc", "line": 1, "statement": "; helix using switchkins (xyzbc) b,c angles", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": false, "sourceLineKind": "comment", "result": { "status": "ok", "operation": "comment", "sourceLineKind": "comment", "executed": false, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 75, "sourceFile": "helix_bc.ngc", "line": 2, "statement": "osub", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": true, "sourceLineKind": "subroutine-boundary", "result": { "status": "ok", "operation": "subroutine-enter", "sourceLineKind": "subroutine-boundary", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 76, "sourceFile": "helix_bc.ngc", "line": 3, "statement": "# = #1 (=10)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "zmax": 10 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 77, "sourceFile": "helix_bc.ngc", "line": 4, "statement": "# = #2 (= 5)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "zmin": 5 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 78, "sourceFile": "helix_bc.ngc", "line": 5, "statement": "# = #3 (=10)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "r": 10 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 79, "sourceFile": "helix_bc.ngc", "line": 6, "statement": "# = #4 (=1000)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "frate": 1000 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 80, "sourceFile": "helix_bc.ngc", "line": 7, "statement": "# = #5 (=3)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "n": 3 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 81, "sourceFile": "helix_bc.ngc", "line": 8, "statement": "# = #6 (=0 NA)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "a": 0 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 82, "sourceFile": "helix_bc.ngc", "line": 9, "statement": "# = #7 (=45)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "b": 20 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 83, "sourceFile": "helix_bc.ngc", "line": 10, "statement": "# = #8 (=20)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "c": 45 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 84, "sourceFile": "helix_bc.ngc", "line": 12, "statement": "M429 ;Identity kinematics", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-identity", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "identity", "code": "M429" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 36, "notes": [] } }, { "stepIndex": 85, "sourceFile": "helix_bc.ngc", "line": 13, "statement": "g0 x[#<_x> - #] ;adjust for radius", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-radius-adjust", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 16, "motionType": "rapid", "feed": 2100, "startJoint": { "x": -20, "y": -20, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": -30, "y": -20, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": -20, "y": -20, "z": 10 }, "endTcp": { "x": -30, "y": -20, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 37, "notes": [] } }, { "stepIndex": 86, "sourceFile": "helix_bc.ngc", "line": 14, "statement": "g10l20p0 x0y0 z# b0 c0 ;new g54", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": true, "sourceLineKind": "offset", "result": { "status": "ok", "operation": "set-g54-offset", "sourceLineKind": "offset", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "workOffsetAfter": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "modalChange": { "coordinateSystem": "G54", "code": "G10 L20 P0" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 38, "notes": [] } }, { "stepIndex": 87, "sourceFile": "helix_bc.ngc", "line": 15, "statement": "M428 ;XYZBC", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-tcp-xyzbc", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "tcp-xyzbc", "code": "M428" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 39, "notes": [] } }, { "stepIndex": 88, "sourceFile": "helix_bc.ngc", "line": 16, "statement": "g0b#c# ;exercise b,c", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-bc-orient", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 17, "motionType": "rapid", "feed": 2100, "startJoint": { "x": -30, "y": -20, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": -30, "y": -20, "z": 10, "b": 20, "c": 45 }, "startTcp": { "x": -30, "y": -20, "z": 10 }, "endTcp": { "x": -30, "y": -20, "z": 10 }, "endToolAxis": { "i": 0.24184476264797528, "j": 0.24184476264797522, "k": 0.9396926207859084 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 40, "notes": [] } }, { "stepIndex": 89, "sourceFile": "helix_bc.ngc", "line": 17, "statement": "f# g2i#z# p# ;helix", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "feed-helix", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 18, "motionType": "arc", "feed": 1000, "startJoint": { "x": -30, "y": -20, "z": 10, "b": 20, "c": 45 }, "endJoint": { "x": -30, "y": -20, "z": 5, "b": 20, "c": 45 }, "startTcp": { "x": -30, "y": -20, "z": 10 }, "endTcp": { "x": -30, "y": -20, "z": 5 }, "endToolAxis": { "i": 0.24184476264797528, "j": 0.24184476264797522, "k": 0.9396926207859084 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 1000, "actualMmPerMin": 1000, "overridePercent": 100 }, "cutting": { "active": true, "cuttingSpeedMmPerMin": 1000 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 41, "notes": [] } }, { "stepIndex": 90, "sourceFile": "helix_bc.ngc", "line": 18, "statement": "M429 ;Identity kinematics", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-identity", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "identity", "code": "M429" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 1000, "actualMmPerMin": 1000, "overridePercent": 100 }, "cutting": { "active": true, "cuttingSpeedMmPerMin": 1000 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 1000, "actualMmPerMin": 1000, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 42, "notes": [] } }, { "stepIndex": 91, "sourceFile": "helix_bc.ngc", "line": 19, "statement": "g0 x0 y0 z# b0 c0 ;return to start", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-return-to-start", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 19, "motionType": "rapid", "feed": 2100, "startJoint": { "x": -30, "y": -20, "z": 5, "b": 20, "c": 45 }, "endJoint": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": -30, "y": -20, "z": 5 }, "endTcp": { "x": 0, "y": 0, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 1000, "actualMmPerMin": 1000, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 43, "notes": [] } }, { "stepIndex": 92, "sourceFile": "helix_bc.ngc", "line": 20, "statement": "g0 x[#<_x> + #] ;adjust restore", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-radius-restore", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 20, "motionType": "rapid", "feed": 2100, "startJoint": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": 10, "y": 0, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": 0, "y": 0, "z": 10 }, "endTcp": { "x": 10, "y": 0, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 44, "notes": [] } }, { "stepIndex": 93, "sourceFile": "helix_bc.ngc", "line": 21, "statement": "M428 ;XYZBC", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-tcp-xyzbc", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "tcp-xyzbc", "code": "M428" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 45, "notes": [] } }, { "stepIndex": 94, "sourceFile": "helix_bc.ngc", "line": 22, "statement": "oendsub", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": true, "sourceLineKind": "subroutine-boundary", "result": { "status": "ok", "operation": "subroutine-exit", "sourceLineKind": "subroutine-boundary", "executed": true, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 95, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 35, "statement": "; quadrant IV", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": false, "sourceLineKind": "comment", "result": { "status": "ok", "operation": "comment-quadrant-IV", "sourceLineKind": "comment", "executed": false, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 96, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 36, "statement": "M429 ;Identity kinematics", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-identity", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "identity", "code": "M429" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 46, "notes": [] } }, { "stepIndex": 97, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 37, "statement": "g53 g0 x0y0 z# b0 c0", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-machine-reset", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 21, "motionType": "rapid", "feed": 2100, "startJoint": { "x": 10, "y": 0, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": 10, "y": 0, "z": 10 }, "endTcp": { "x": 0, "y": 0, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 47, "notes": [] } }, { "stepIndex": 98, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 38, "statement": "g10l20p0 x0y0 z# b0 c0", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "offset", "result": { "status": "ok", "operation": "set-g54-offset", "sourceLineKind": "offset", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "workOffsetAfter": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "modalChange": { "coordinateSystem": "G54", "code": "G10 L20 P0" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 48, "notes": [] } }, { "stepIndex": 99, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 39, "statement": "g0 x+# y-# z#", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-to-quadrant-center", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 22, "motionType": "rapid", "feed": 2100, "startJoint": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": 20, "y": -20, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": 0, "y": 0, "z": 10 }, "endTcp": { "x": 20, "y": -20, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 49, "notes": [] } }, { "stepIndex": 100, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "statement": "o call [#][#][#][#][#][#][#][#]", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "call", "result": { "status": "ok", "operation": "call-subroutine", "sourceLineKind": "call", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 50, "notes": [] } }, { "stepIndex": 101, "sourceFile": "helix_bc.ngc", "line": 1, "statement": "; helix using switchkins (xyzbc) b,c angles", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": false, "sourceLineKind": "comment", "result": { "status": "ok", "operation": "comment", "sourceLineKind": "comment", "executed": false, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 102, "sourceFile": "helix_bc.ngc", "line": 2, "statement": "osub", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": true, "sourceLineKind": "subroutine-boundary", "result": { "status": "ok", "operation": "subroutine-enter", "sourceLineKind": "subroutine-boundary", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 103, "sourceFile": "helix_bc.ngc", "line": 3, "statement": "# = #1 (=10)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "zmax": 10 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 104, "sourceFile": "helix_bc.ngc", "line": 4, "statement": "# = #2 (= 5)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "zmin": 5 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 105, "sourceFile": "helix_bc.ngc", "line": 5, "statement": "# = #3 (=10)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "r": 10 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 106, "sourceFile": "helix_bc.ngc", "line": 6, "statement": "# = #4 (=1000)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "frate": 1000 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 107, "sourceFile": "helix_bc.ngc", "line": 7, "statement": "# = #5 (=3)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "n": 3 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 108, "sourceFile": "helix_bc.ngc", "line": 8, "statement": "# = #6 (=0 NA)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "a": 0 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 109, "sourceFile": "helix_bc.ngc", "line": 9, "statement": "# = #7 (=45)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "b": 20 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 110, "sourceFile": "helix_bc.ngc", "line": 10, "statement": "# = #8 (=20)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "c": 45 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 111, "sourceFile": "helix_bc.ngc", "line": 12, "statement": "M429 ;Identity kinematics", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-identity", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "identity", "code": "M429" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 51, "notes": [] } }, { "stepIndex": 112, "sourceFile": "helix_bc.ngc", "line": 13, "statement": "g0 x[#<_x> - #] ;adjust for radius", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-radius-adjust", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 23, "motionType": "rapid", "feed": 2100, "startJoint": { "x": 20, "y": -20, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": 10, "y": -20, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": 20, "y": -20, "z": 10 }, "endTcp": { "x": 10, "y": -20, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 52, "notes": [] } }, { "stepIndex": 113, "sourceFile": "helix_bc.ngc", "line": 14, "statement": "g10l20p0 x0y0 z# b0 c0 ;new g54", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": true, "sourceLineKind": "offset", "result": { "status": "ok", "operation": "set-g54-offset", "sourceLineKind": "offset", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "workOffsetAfter": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "modalChange": { "coordinateSystem": "G54", "code": "G10 L20 P0" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 53, "notes": [] } }, { "stepIndex": 114, "sourceFile": "helix_bc.ngc", "line": 15, "statement": "M428 ;XYZBC", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-tcp-xyzbc", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "tcp-xyzbc", "code": "M428" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 54, "notes": [] } }, { "stepIndex": 115, "sourceFile": "helix_bc.ngc", "line": 16, "statement": "g0b#c# ;exercise b,c", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-bc-orient", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 24, "motionType": "rapid", "feed": 2100, "startJoint": { "x": 10, "y": -20, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": 10, "y": -20, "z": 10, "b": 20, "c": 45 }, "startTcp": { "x": 10, "y": -20, "z": 10 }, "endTcp": { "x": 10, "y": -20, "z": 10 }, "endToolAxis": { "i": 0.24184476264797528, "j": 0.24184476264797522, "k": 0.9396926207859084 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 55, "notes": [] } }, { "stepIndex": 116, "sourceFile": "helix_bc.ngc", "line": 17, "statement": "f# g2i#z# p# ;helix", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "feed-helix", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 25, "motionType": "arc", "feed": 1000, "startJoint": { "x": 10, "y": -20, "z": 10, "b": 20, "c": 45 }, "endJoint": { "x": 10, "y": -20, "z": 5, "b": 20, "c": 45 }, "startTcp": { "x": 10, "y": -20, "z": 10 }, "endTcp": { "x": 10, "y": -20, "z": 5 }, "endToolAxis": { "i": 0.24184476264797528, "j": 0.24184476264797522, "k": 0.9396926207859084 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 1000, "actualMmPerMin": 1000, "overridePercent": 100 }, "cutting": { "active": true, "cuttingSpeedMmPerMin": 1000 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 56, "notes": [] } }, { "stepIndex": 117, "sourceFile": "helix_bc.ngc", "line": 18, "statement": "M429 ;Identity kinematics", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-identity", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "identity", "code": "M429" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 1000, "actualMmPerMin": 1000, "overridePercent": 100 }, "cutting": { "active": true, "cuttingSpeedMmPerMin": 1000 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 1000, "actualMmPerMin": 1000, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 57, "notes": [] } }, { "stepIndex": 118, "sourceFile": "helix_bc.ngc", "line": 19, "statement": "g0 x0 y0 z# b0 c0 ;return to start", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-return-to-start", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 26, "motionType": "rapid", "feed": 2100, "startJoint": { "x": 10, "y": -20, "z": 5, "b": 20, "c": 45 }, "endJoint": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": 10, "y": -20, "z": 5 }, "endTcp": { "x": 0, "y": 0, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 1000, "actualMmPerMin": 1000, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 58, "notes": [] } }, { "stepIndex": 119, "sourceFile": "helix_bc.ngc", "line": 20, "statement": "g0 x[#<_x> + #] ;adjust restore", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-radius-restore", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 27, "motionType": "rapid", "feed": 2100, "startJoint": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": 10, "y": 0, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": 0, "y": 0, "z": 10 }, "endTcp": { "x": 10, "y": 0, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 59, "notes": [] } }, { "stepIndex": 120, "sourceFile": "helix_bc.ngc", "line": 21, "statement": "M428 ;XYZBC", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-tcp-xyzbc", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "tcp-xyzbc", "code": "M428" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 60, "notes": [] } }, { "stepIndex": 121, "sourceFile": "helix_bc.ngc", "line": 22, "statement": "oendsub", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": true, "sourceLineKind": "subroutine-boundary", "result": { "status": "ok", "operation": "subroutine-exit", "sourceLineKind": "subroutine-boundary", "executed": true, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 122, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 42, "statement": ";final position", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": false, "sourceLineKind": "comment", "result": { "status": "ok", "operation": "comment-final-position", "sourceLineKind": "comment", "executed": false, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 123, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 43, "statement": "M429 ;Identity kinematics", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-identity", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "identity", "code": "M429" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 61, "notes": [] } }, { "stepIndex": 124, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 44, "statement": "g53 g0 x0y0 z# ;MACHINE coordinates", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-final-machine-reset", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 28, "motionType": "rapid", "feed": 2100, "startJoint": { "x": 10, "y": 0, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": 10, "y": 0, "z": 10 }, "endTcp": { "x": 0, "y": 0, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 62, "notes": [] } }, { "stepIndex": 125, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 45, "statement": "g10l20p0 x0y0 z# ;new g54", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "offset", "result": { "status": "ok", "operation": "set-g54-offset", "sourceLineKind": "offset", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "workOffsetAfter": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "modalChange": { "coordinateSystem": "G54", "code": "G10 L20 P0" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 63, "notes": [] } }, { "stepIndex": 126, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 47, "statement": "oendsub", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "subroutine-boundary", "result": { "status": "ok", "operation": "subroutine-exit", "sourceLineKind": "subroutine-boundary", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 127, "sourceFile": "xyzbc_switchkins.ngc", "line": 3, "statement": "m2", "callDepth": 0, "callStack": [], "executed": true, "sourceLineKind": "program-end", "result": { "status": "ok", "operation": "program-end", "sourceLineKind": "program-end", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "program": "ended", "code": "M2" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } } ], "summary": { "motionStepCount": 29, "switchkinsStepCount": 21, "parameterAssignmentStepCount": 41, "workOffsetStepCount": 9, "callStepCount": 5, "noMotionStepCount": 99, "finalJoint": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "finalKinematics": "identity" }, "semanticBoundary": "complete_gcode_execution_process_expanded_from_linuxcnc_xyzbc_trt_sources" }, "currentVelocity": 0, "operatorMessage": "task/HAL status tick 181", "pauseButton": { "action": "pause-resume", "paused": "true", "title": "Resume program", "ariaPressed": "true" }, "canvasDataset": { "width": 383, "height": 572, "threeToolAxis": "{\"x\":0.242,\"y\":0.242,\"z\":0.94}", "threeToolGlyphAxis": "{\"x\":0.242,\"y\":0.242,\"z\":0.94}" }, "canvasToolhead": { "x": 0.003, "y": -0.01, "z": -0.071 }, "canvasVismachPins": null, "programPaneDataset": { "region": "program", "liveSourceFile": "helix_bc.ngc", "liveSourceLine": "17", "liveSampleIndex": "152", "liveExecutedSamples": "153", "gcodeExecutionStatus": "ok", "gcodeExecutionStepCount": "128", "gcodeMotionStepCount": "29", "gcodeParameterStepCount": "41", "gcodeCallDepth": "2" }, "processMonitorDataset": { "linuxcncProcessMonitor": "", "sourceMode": "linuxcnc-task-motion-hal-wasm", "taskHalReady": "true", "activeLine": "17", "liveSourceFile": "helix_bc.ngc", "liveSourceLine": "17", "liveSampleIndex": "152" } }, "after": { "runState": "running", "taskState": "on", "powerOn": true, "estopActive": false, "allHomed": true, "mode": "auto", "interpState": "reading", "taskPaused": false, "motionPaused": false, "activeLine": 17, "sampleIndex": 152, "programExecutionSourceMode": "linuxcnc-task-motion-hal-wasm", "programUiExecution": { "apiName": "web-rtcp-5axis-ui-gcode-live-execution", "status": "running", "source": "programAxisPreviewPath.samples", "samplePeriodMs": 50, "sampleIndex": 152, "sampleCount": 1300, "executedSampleCount": 153, "timeMs": 7600, "activeProgram": "configs/sim/axis/vismach/5axis/table-rotary-tilting/demos/xyzbc_switchkins.ngc", "sourceFile": "helix_bc.ngc", "line": 17, "statement": "f# g2i#z# p#", "operation": "feed-helix", "executionIndex": 11, "gcodeStepIndex": 35, "segmentIndex": 4, "motionType": "arc", "activeKinematics": "tcp-xyzbc", "joint": { "x": 23.8906, "y": 10.7969, "z": 7.81057, "a": 0, "b": 20, "c": 45 }, "tcp": { "x": 23.8906, "y": 10.7969, "z": 7.81057 }, "toolAxis": { "i": 0.24184476264797528, "j": 0.24184476264797522, "k": 0.9396926207859084 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "machineState": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 1000, "actualMmPerMin": 1000, "overridePercent": 100 }, "cutting": { "active": true, "cuttingSpeedMmPerMin": 1000 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "semanticBoundary": "ui_updates_from_real_expanded_linuxcnc_gcode_sample_stream" }, "currentVelocity": 996.516, "operatorMessage": "task/HAL status tick 184" } }, { "label": "第一次继续执行 5 秒", "at": "2026-07-09T17:32:40.444Z", "durationMs": 5900, "state": { "runState": "running", "taskState": "on", "powerOn": true, "estopActive": false, "allHomed": true, "mode": "auto", "interpState": "reading", "taskPaused": false, "motionPaused": false, "activeLine": 17, "sampleIndex": 256, "programExecutionSourceMode": "linuxcnc-task-motion-hal-wasm", "programUiExecution": { "apiName": "web-rtcp-5axis-ui-gcode-live-execution", "status": "running", "source": "programAxisPreviewPath.samples", "samplePeriodMs": 50, "sampleIndex": 256, "sampleCount": 1300, "executedSampleCount": 257, "timeMs": 12800, "activeProgram": "configs/sim/axis/vismach/5axis/table-rotary-tilting/demos/xyzbc_switchkins.ngc", "sourceFile": "helix_bc.ngc", "line": 17, "statement": "f# g2i#z# p#", "operation": "feed-helix", "executionIndex": 11, "gcodeStepIndex": 35, "segmentIndex": 4, "motionType": "arc", "activeKinematics": "tcp-xyzbc", "joint": { "x": 23.7886, "y": 29.2456, "z": 5.51982, "a": 0, "b": 20, "c": 45 }, "tcp": { "x": 23.7886, "y": 29.2456, "z": 5.51982 }, "toolAxis": { "i": 0.24184476264797528, "j": 0.24184476264797522, "k": 0.9396926207859084 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "machineState": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 1000, "actualMmPerMin": 1000, "overridePercent": 100 }, "cutting": { "active": true, "cuttingSpeedMmPerMin": 1000 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "semanticBoundary": "ui_updates_from_real_expanded_linuxcnc_gcode_sample_stream" }, "currentVelocity": 996.516, "operatorMessage": "task/HAL status tick 104" }, "frozenPosition": null, "movedDuringHold": true }, { "label": "第二次暂停", "selector": "[data-tool-id=\"tbtn_pause\"]", "clickMethod": "dom-element-click", "at": "2026-07-09T17:32:43.570Z", "elapsedMs": 3027, "before": { "machineProfile": "xyzbc-trt", "selectedGcodeSourceRel": "configs/sim/axis/vismach/5axis/table-rotary-tilting/demos/xyzbc_switchkins.ngc", "taskHalLoaded": true, "taskHalRuntimeReadiness": { "apiName": "web-rtcp-5axis-linuxcnc-task-hal-runtime-readiness", "loaded": true, "semanticBoundary": "linuxcnc_task_motion_hal_wasm_simulation_runtime", "sdkSemanticBoundary": "linuxcnc_task_motion_hal_wasm_phase4_minimal", "executionContext": "direct", "workerUrl": null, "taskRuntimeReady": true, "motionRuntimeReady": true, "halRuntimeReady": true, "halSyncReady": true, "nativeTaskReady": true, "nativeHalSyncReady": true, "hardwareDrive": false, "hostRealtimeKernel": false, "externalUserMProcessReady": false }, "runState": "running", "taskState": "on", "powerOn": true, "estopActive": false, "allHomed": true, "mode": "auto", "interpState": "reading", "interpResumeState": "reading", "taskPaused": false, "motionPaused": false, "rtcpState": "off", "kinsType": "identity", "activeLine": 20, "programExecutionSourceMode": "linuxcnc-task-motion-hal-wasm", "programExecutionSampleIndex": 312, "programRuntimeFeedback": { "apiName": "web-rtcp-5axis-program-runtime-feedback", "sourceMode": "linuxcnc-task-motion-hal-wasm", "semanticBoundary": "linuxcnc_task_motion_hal_wasm_simulation_runtime", "sampleIndex": 312, "motionIndex": 6, "line": 20, "motionProgramLine": 20, "halProgramLine": 20, "activeLineSource": "emc-status", "activeLineHalSynced": true, "type": "TASK_MOTION", "paused": false, "timeSeconds": 17.47, "axisPose": { "x": 0.1875, "y": 0.375, "z": 9.90625, "a": 0, "b": 0.375, "c": 0.84375 }, "currentVelocityMmPerMin": 859.2299999999999, "requestedVelocityMmPerMin": 859.2299999999999, "distanceToGo": 0, "dtg": { "x": 0, "y": 0, "z": 0 }, "queueDepth": 0, "activeDepth": 0, "cycle": 17470, "taskCycle": 1747, "halChangedPinCount": 0, "sourceFile": "helix_bc.ngc", "statement": "g0 x[#<_x> + #]", "motionType": "rapid", "activeKinematics": "identity", "tcp": { "x": 0.1875, "y": 0.375, "z": 9.90625 }, "toolAxis": { "i": 0, "j": 0, "k": 1 }, "machineState": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } } }, "axisPose": { "x": 0.12816902367305877, "y": 0.3731530840705952, "z": 9.907265000479159, "a": 0, "b": 0.375, "c": 0.84375 }, "dro": { "x": 0.12816902367305877, "y": 0.3731530840705952, "z": 9.907265000479159, "a": 0, "b": 0.375, "c": 0.84375, "tcpX": 0.12816902367305877, "tcpY": 0.3731530840705952, "tcpZ": 9.907265000479159, "dtgX": 0, "dtgY": 0, "dtgZ": 0 }, "programUiExecution": { "apiName": "web-rtcp-5axis-ui-gcode-live-execution", "status": "running", "source": "programAxisPreviewPath.samples", "samplePeriodMs": 50, "sampleIndex": 312, "sampleCount": 1300, "executedSampleCount": 313, "timeMs": 15600, "activeProgram": "configs/sim/axis/vismach/5axis/table-rotary-tilting/demos/xyzbc_switchkins.ngc", "sourceFile": "helix_bc.ngc", "line": 20, "statement": "g0 x[#<_x> + #]", "operation": "rapid-radius-restore", "executionIndex": 14, "gcodeStepIndex": 38, "segmentIndex": 6, "motionType": "rapid", "activeKinematics": "identity", "joint": { "x": 0.1875, "y": 0.375, "z": 9.90625, "a": 0, "b": 0.375, "c": 0.84375 }, "tcp": { "x": 0.1875, "y": 0.375, "z": 9.90625 }, "toolAxis": { "i": 0, "j": 0, "k": 1 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "machineState": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "semanticBoundary": "ui_updates_from_real_expanded_linuxcnc_gcode_sample_stream" }, "samplePeriodMs": 50, "sampleCount": 1300, "gcodeExecutionProcess": { "apiName": "linuxcnc-xyzbc-trt-gcode-complete-execution-process", "status": "ok", "program": "xyzbc_switchkins.ngc", "sourceFiles": [ { "sourceFile": "xyzbc_switchkins.ngc", "lineCount": 3 }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "lineCount": 41 }, { "sourceFile": "helix_bc.ngc", "lineCount": 21 } ], "executionStepCount": 128, "sourceLineCoverage": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 1, "statement": "; zmax zmin r frate n a b c dist", "sourceLineKind": "comment", "visitCount": 1, "producedMotionCount": 0, "operations": [ "comment" ] }, { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "statement": "o call [10] [5] [10][1000][3][0][20][45][20]", "sourceLineKind": "call", "visitCount": 1, "producedMotionCount": 0, "operations": [ "call-subroutine" ] }, { "sourceFile": "xyzbc_switchkins.ngc", "line": 3, "statement": "m2", "sourceLineKind": "mcode", "visitCount": 1, "producedMotionCount": 0, "operations": [ "program-end" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 1, "statement": "; ngcgui-compatible subroutine", "sourceLineKind": "comment", "visitCount": 1, "producedMotionCount": 0, "operations": [ "comment" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 2, "statement": "(info: helix in each quadrant at angles B,C)", "sourceLineKind": "comment", "visitCount": 1, "producedMotionCount": 0, "operations": [ "info-comment" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 3, "statement": "osub", "sourceLineKind": "subroutine-boundary", "visitCount": 1, "producedMotionCount": 0, "operations": [ "subroutine-enter" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 4, "statement": "# = #1 (=10)", "sourceLineKind": "assignment", "visitCount": 1, "producedMotionCount": 0, "operations": [ "parameter-assignment" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 5, "statement": "# = #2 (= 5)", "sourceLineKind": "assignment", "visitCount": 1, "producedMotionCount": 0, "operations": [ "parameter-assignment" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 6, "statement": "# = #3 (=10 radius)", "sourceLineKind": "assignment", "visitCount": 1, "producedMotionCount": 0, "operations": [ "parameter-assignment" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 7, "statement": "# = #4 (=1000 feedrate)", "sourceLineKind": "assignment", "visitCount": 1, "producedMotionCount": 0, "operations": [ "parameter-assignment" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 8, "statement": "# = #5 (=3 n circles)", "sourceLineKind": "assignment", "visitCount": 1, "producedMotionCount": 0, "operations": [ "parameter-assignment" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 9, "statement": "# = #6 (=0 A angle NA)", "sourceLineKind": "assignment", "visitCount": 1, "producedMotionCount": 0, "operations": [ "parameter-assignment" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 10, "statement": "# = #7 (=30 B angle)", "sourceLineKind": "assignment", "visitCount": 1, "producedMotionCount": 0, "operations": [ "parameter-assignment" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 11, "statement": "# = #8 (=45 C angle)", "sourceLineKind": "assignment", "visitCount": 1, "producedMotionCount": 0, "operations": [ "parameter-assignment" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 12, "statement": "# = #9 (=20 distance)", "sourceLineKind": "assignment", "visitCount": 1, "producedMotionCount": 0, "operations": [ "parameter-assignment" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 14, "statement": "; quadrant I", "sourceLineKind": "comment", "visitCount": 1, "producedMotionCount": 0, "operations": [ "comment-quadrant-I" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 15, "statement": "M429 ;Identity kinematics", "sourceLineKind": "mcode", "visitCount": 1, "producedMotionCount": 0, "operations": [ "switchkins-identity" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 16, "statement": "g53 g0 x0y0 z# b0 c0 ;MACHINE coordinates", "sourceLineKind": "motion", "visitCount": 1, "producedMotionCount": 1, "operations": [ "rapid-machine-reset" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 17, "statement": "g10l20p0 x0y0 z# b0 c0 ;new g54", "sourceLineKind": "offset", "visitCount": 1, "producedMotionCount": 0, "operations": [ "set-g54-offset" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 18, "statement": "g0 x+# y+# z# ;move to pattern center position", "sourceLineKind": "motion", "visitCount": 1, "producedMotionCount": 1, "operations": [ "rapid-to-quadrant-center" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "statement": "o call [#][#][#][#][#][#][#][#]", "sourceLineKind": "call", "visitCount": 1, "producedMotionCount": 0, "operations": [ "call-subroutine" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 21, "statement": "; quadrant II", "sourceLineKind": "comment", "visitCount": 1, "producedMotionCount": 0, "operations": [ "comment-quadrant-II" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 22, "statement": "M429 ;Identity kinematics", "sourceLineKind": "mcode", "visitCount": 1, "producedMotionCount": 0, "operations": [ "switchkins-identity" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 23, "statement": "g53 g0 x0y0 z# b0 c0", "sourceLineKind": "motion", "visitCount": 1, "producedMotionCount": 1, "operations": [ "rapid-machine-reset" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 24, "statement": "g10l20p0 x0y0 z# b0 c0", "sourceLineKind": "offset", "visitCount": 1, "producedMotionCount": 0, "operations": [ "set-g54-offset" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 25, "statement": "g0 x-# y+# z#", "sourceLineKind": "motion", "visitCount": 1, "producedMotionCount": 1, "operations": [ "rapid-to-quadrant-center" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "statement": "o call [#][#][#][#][#][#][#][#]", "sourceLineKind": "call", "visitCount": 1, "producedMotionCount": 0, "operations": [ "call-subroutine" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 28, "statement": "; quadrant III", "sourceLineKind": "comment", "visitCount": 1, "producedMotionCount": 0, "operations": [ "comment-quadrant-III" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 29, "statement": "M429 ;Identity kinematics", "sourceLineKind": "mcode", "visitCount": 1, "producedMotionCount": 0, "operations": [ "switchkins-identity" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 30, "statement": "g53 g0 x0y0 z# b0 c0", "sourceLineKind": "motion", "visitCount": 1, "producedMotionCount": 1, "operations": [ "rapid-machine-reset" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 31, "statement": "g10l20p0 x0y0 z# b0 c0", "sourceLineKind": "offset", "visitCount": 1, "producedMotionCount": 0, "operations": [ "set-g54-offset" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 32, "statement": "g0 x-# y-# z#", "sourceLineKind": "motion", "visitCount": 1, "producedMotionCount": 1, "operations": [ "rapid-to-quadrant-center" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "statement": "o call [#][#][#][#][#][#][#][#]", "sourceLineKind": "call", "visitCount": 1, "producedMotionCount": 0, "operations": [ "call-subroutine" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 35, "statement": "; quadrant IV", "sourceLineKind": "comment", "visitCount": 1, "producedMotionCount": 0, "operations": [ "comment-quadrant-IV" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 36, "statement": "M429 ;Identity kinematics", "sourceLineKind": "mcode", "visitCount": 1, "producedMotionCount": 0, "operations": [ "switchkins-identity" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 37, "statement": "g53 g0 x0y0 z# b0 c0", "sourceLineKind": "motion", "visitCount": 1, "producedMotionCount": 1, "operations": [ "rapid-machine-reset" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 38, "statement": "g10l20p0 x0y0 z# b0 c0", "sourceLineKind": "offset", "visitCount": 1, "producedMotionCount": 0, "operations": [ "set-g54-offset" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 39, "statement": "g0 x+# y-# z#", "sourceLineKind": "motion", "visitCount": 1, "producedMotionCount": 1, "operations": [ "rapid-to-quadrant-center" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "statement": "o call [#][#][#][#][#][#][#][#]", "sourceLineKind": "call", "visitCount": 1, "producedMotionCount": 0, "operations": [ "call-subroutine" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 42, "statement": ";final position", "sourceLineKind": "comment", "visitCount": 1, "producedMotionCount": 0, "operations": [ "comment-final-position" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 43, "statement": "M429 ;Identity kinematics", "sourceLineKind": "mcode", "visitCount": 1, "producedMotionCount": 0, "operations": [ "switchkins-identity" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 44, "statement": "g53 g0 x0y0 z# ;MACHINE coordinates", "sourceLineKind": "motion", "visitCount": 1, "producedMotionCount": 1, "operations": [ "rapid-final-machine-reset" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 45, "statement": "g10l20p0 x0y0 z# ;new g54", "sourceLineKind": "offset", "visitCount": 1, "producedMotionCount": 0, "operations": [ "set-g54-offset" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 47, "statement": "oendsub", "sourceLineKind": "subroutine-boundary", "visitCount": 1, "producedMotionCount": 0, "operations": [ "subroutine-exit" ] }, { "sourceFile": "helix_bc.ngc", "line": 1, "statement": "; helix using switchkins (xyzbc) b,c angles", "sourceLineKind": "comment", "visitCount": 4, "producedMotionCount": 0, "operations": [ "comment" ] }, { "sourceFile": "helix_bc.ngc", "line": 2, "statement": "osub", "sourceLineKind": "subroutine-boundary", "visitCount": 4, "producedMotionCount": 0, "operations": [ "subroutine-enter" ] }, { "sourceFile": "helix_bc.ngc", "line": 3, "statement": "# = #1 (=10)", "sourceLineKind": "assignment", "visitCount": 4, "producedMotionCount": 0, "operations": [ "parameter-assignment" ] }, { "sourceFile": "helix_bc.ngc", "line": 4, "statement": "# = #2 (= 5)", "sourceLineKind": "assignment", "visitCount": 4, "producedMotionCount": 0, "operations": [ "parameter-assignment" ] }, { "sourceFile": "helix_bc.ngc", "line": 5, "statement": "# = #3 (=10)", "sourceLineKind": "assignment", "visitCount": 4, "producedMotionCount": 0, "operations": [ "parameter-assignment" ] }, { "sourceFile": "helix_bc.ngc", "line": 6, "statement": "# = #4 (=1000)", "sourceLineKind": "assignment", "visitCount": 4, "producedMotionCount": 0, "operations": [ "parameter-assignment" ] }, { "sourceFile": "helix_bc.ngc", "line": 7, "statement": "# = #5 (=3)", "sourceLineKind": "assignment", "visitCount": 4, "producedMotionCount": 0, "operations": [ "parameter-assignment" ] }, { "sourceFile": "helix_bc.ngc", "line": 8, "statement": "# = #6 (=0 NA)", "sourceLineKind": "assignment", "visitCount": 4, "producedMotionCount": 0, "operations": [ "parameter-assignment" ] }, { "sourceFile": "helix_bc.ngc", "line": 9, "statement": "# = #7 (=45)", "sourceLineKind": "assignment", "visitCount": 4, "producedMotionCount": 0, "operations": [ "parameter-assignment" ] }, { "sourceFile": "helix_bc.ngc", "line": 10, "statement": "# = #8 (=20)", "sourceLineKind": "assignment", "visitCount": 4, "producedMotionCount": 0, "operations": [ "parameter-assignment" ] }, { "sourceFile": "helix_bc.ngc", "line": 12, "statement": "M429 ;Identity kinematics", "sourceLineKind": "mcode", "visitCount": 4, "producedMotionCount": 0, "operations": [ "switchkins-identity" ] }, { "sourceFile": "helix_bc.ngc", "line": 13, "statement": "g0 x[#<_x> - #] ;adjust for radius", "sourceLineKind": "motion", "visitCount": 4, "producedMotionCount": 4, "operations": [ "rapid-radius-adjust" ] }, { "sourceFile": "helix_bc.ngc", "line": 14, "statement": "g10l20p0 x0y0 z# b0 c0 ;new g54", "sourceLineKind": "offset", "visitCount": 4, "producedMotionCount": 0, "operations": [ "set-g54-offset" ] }, { "sourceFile": "helix_bc.ngc", "line": 15, "statement": "M428 ;XYZBC", "sourceLineKind": "mcode", "visitCount": 4, "producedMotionCount": 0, "operations": [ "switchkins-tcp-xyzbc" ] }, { "sourceFile": "helix_bc.ngc", "line": 16, "statement": "g0b#c# ;exercise b,c", "sourceLineKind": "motion", "visitCount": 4, "producedMotionCount": 4, "operations": [ "rapid-bc-orient" ] }, { "sourceFile": "helix_bc.ngc", "line": 17, "statement": "f# g2i#z# p# ;helix", "sourceLineKind": "motion", "visitCount": 4, "producedMotionCount": 4, "operations": [ "feed-helix" ] }, { "sourceFile": "helix_bc.ngc", "line": 18, "statement": "M429 ;Identity kinematics", "sourceLineKind": "mcode", "visitCount": 4, "producedMotionCount": 0, "operations": [ "switchkins-identity" ] }, { "sourceFile": "helix_bc.ngc", "line": 19, "statement": "g0 x0 y0 z# b0 c0 ;return to start", "sourceLineKind": "motion", "visitCount": 4, "producedMotionCount": 4, "operations": [ "rapid-return-to-start" ] }, { "sourceFile": "helix_bc.ngc", "line": 20, "statement": "g0 x[#<_x> + #] ;adjust restore", "sourceLineKind": "motion", "visitCount": 4, "producedMotionCount": 4, "operations": [ "rapid-radius-restore" ] }, { "sourceFile": "helix_bc.ngc", "line": 21, "statement": "M428 ;XYZBC", "sourceLineKind": "mcode", "visitCount": 4, "producedMotionCount": 0, "operations": [ "switchkins-tcp-xyzbc" ] }, { "sourceFile": "helix_bc.ngc", "line": 22, "statement": "oendsub", "sourceLineKind": "subroutine-boundary", "visitCount": 4, "producedMotionCount": 0, "operations": [ "subroutine-exit" ] } ], "executionSteps": [ { "stepIndex": 0, "sourceFile": "xyzbc_switchkins.ngc", "line": 1, "statement": "; zmax zmin r frate n a b c dist", "callDepth": 0, "callStack": [], "executed": false, "sourceLineKind": "comment", "result": { "status": "ok", "operation": "comment", "sourceLineKind": "comment", "executed": false, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 1, "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "statement": "o call [10] [5] [10][1000][3][0][20][45][20]", "callDepth": 0, "callStack": [], "executed": true, "sourceLineKind": "call", "result": { "status": "ok", "operation": "call-subroutine", "sourceLineKind": "call", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 0, "notes": [] } }, { "stepIndex": 2, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 1, "statement": "; ngcgui-compatible subroutine", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": false, "sourceLineKind": "comment", "result": { "status": "ok", "operation": "comment", "sourceLineKind": "comment", "executed": false, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 3, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 2, "statement": "(info: helix in each quadrant at angles B,C)", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": false, "sourceLineKind": "comment", "result": { "status": "ok", "operation": "info-comment", "sourceLineKind": "comment", "executed": false, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 4, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 3, "statement": "osub", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "subroutine-boundary", "result": { "status": "ok", "operation": "subroutine-enter", "sourceLineKind": "subroutine-boundary", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 5, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 4, "statement": "# = #1 (=10)", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": {}, "parametersChanged": { "zmax": 10 }, "parametersAfter": { "zmax": 10 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 6, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 5, "statement": "# = #2 (= 5)", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10 }, "parametersChanged": { "zmin": 5 }, "parametersAfter": { "zmax": 10, "zmin": 5 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 7, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 6, "statement": "# = #3 (=10 radius)", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5 }, "parametersChanged": { "r": 10 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 8, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 7, "statement": "# = #4 (=1000 feedrate)", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10 }, "parametersChanged": { "frate": 1000 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 9, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 8, "statement": "# = #5 (=3 n circles)", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000 }, "parametersChanged": { "n": 3 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 10, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 9, "statement": "# = #6 (=0 A angle NA)", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3 }, "parametersChanged": { "a": 0 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 11, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 10, "statement": "# = #7 (=30 B angle)", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0 }, "parametersChanged": { "b": 20 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 12, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 11, "statement": "# = #8 (=45 C angle)", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20 }, "parametersChanged": { "c": 45 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 13, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 12, "statement": "# = #9 (=20 distance)", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45 }, "parametersChanged": { "dist": 20 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 14, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 14, "statement": "; quadrant I", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": false, "sourceLineKind": "comment", "result": { "status": "ok", "operation": "comment-quadrant-I", "sourceLineKind": "comment", "executed": false, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 15, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 15, "statement": "M429 ;Identity kinematics", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-identity", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "identity", "code": "M429" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 1, "notes": [] } }, { "stepIndex": 16, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 16, "statement": "g53 g0 x0y0 z# b0 c0 ;MACHINE coordinates", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-machine-reset", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 0, "motionType": "rapid", "feed": 2100, "startJoint": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": 0, "y": 0, "z": 10 }, "endTcp": { "x": 0, "y": 0, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 2, "notes": [] } }, { "stepIndex": 17, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 17, "statement": "g10l20p0 x0y0 z# b0 c0 ;new g54", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "offset", "result": { "status": "ok", "operation": "set-g54-offset", "sourceLineKind": "offset", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "workOffsetAfter": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "modalChange": { "coordinateSystem": "G54", "code": "G10 L20 P0" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 3, "notes": [] } }, { "stepIndex": 18, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 18, "statement": "g0 x+# y+# z# ;move to pattern center position", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-to-quadrant-center", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 1, "motionType": "rapid", "feed": 2100, "startJoint": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": 20, "y": 20, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": 0, "y": 0, "z": 10 }, "endTcp": { "x": 20, "y": 20, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 4, "notes": [] } }, { "stepIndex": 19, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "statement": "o call [#][#][#][#][#][#][#][#]", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "call", "result": { "status": "ok", "operation": "call-subroutine", "sourceLineKind": "call", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 5, "notes": [] } }, { "stepIndex": 20, "sourceFile": "helix_bc.ngc", "line": 1, "statement": "; helix using switchkins (xyzbc) b,c angles", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": false, "sourceLineKind": "comment", "result": { "status": "ok", "operation": "comment", "sourceLineKind": "comment", "executed": false, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 21, "sourceFile": "helix_bc.ngc", "line": 2, "statement": "osub", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": true, "sourceLineKind": "subroutine-boundary", "result": { "status": "ok", "operation": "subroutine-enter", "sourceLineKind": "subroutine-boundary", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 22, "sourceFile": "helix_bc.ngc", "line": 3, "statement": "# = #1 (=10)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "zmax": 10 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 23, "sourceFile": "helix_bc.ngc", "line": 4, "statement": "# = #2 (= 5)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "zmin": 5 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 24, "sourceFile": "helix_bc.ngc", "line": 5, "statement": "# = #3 (=10)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "r": 10 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 25, "sourceFile": "helix_bc.ngc", "line": 6, "statement": "# = #4 (=1000)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "frate": 1000 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 26, "sourceFile": "helix_bc.ngc", "line": 7, "statement": "# = #5 (=3)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "n": 3 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 27, "sourceFile": "helix_bc.ngc", "line": 8, "statement": "# = #6 (=0 NA)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "a": 0 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 28, "sourceFile": "helix_bc.ngc", "line": 9, "statement": "# = #7 (=45)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "b": 20 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 29, "sourceFile": "helix_bc.ngc", "line": 10, "statement": "# = #8 (=20)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "c": 45 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 30, "sourceFile": "helix_bc.ngc", "line": 12, "statement": "M429 ;Identity kinematics", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-identity", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "identity", "code": "M429" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 6, "notes": [] } }, { "stepIndex": 31, "sourceFile": "helix_bc.ngc", "line": 13, "statement": "g0 x[#<_x> - #] ;adjust for radius", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-radius-adjust", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 2, "motionType": "rapid", "feed": 2100, "startJoint": { "x": 20, "y": 20, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": 10, "y": 20, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": 20, "y": 20, "z": 10 }, "endTcp": { "x": 10, "y": 20, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 7, "notes": [] } }, { "stepIndex": 32, "sourceFile": "helix_bc.ngc", "line": 14, "statement": "g10l20p0 x0y0 z# b0 c0 ;new g54", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": true, "sourceLineKind": "offset", "result": { "status": "ok", "operation": "set-g54-offset", "sourceLineKind": "offset", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "workOffsetAfter": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "modalChange": { "coordinateSystem": "G54", "code": "G10 L20 P0" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 8, "notes": [] } }, { "stepIndex": 33, "sourceFile": "helix_bc.ngc", "line": 15, "statement": "M428 ;XYZBC", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-tcp-xyzbc", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "tcp-xyzbc", "code": "M428" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 9, "notes": [] } }, { "stepIndex": 34, "sourceFile": "helix_bc.ngc", "line": 16, "statement": "g0b#c# ;exercise b,c", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-bc-orient", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 3, "motionType": "rapid", "feed": 2100, "startJoint": { "x": 10, "y": 20, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": 10, "y": 20, "z": 10, "b": 20, "c": 45 }, "startTcp": { "x": 10, "y": 20, "z": 10 }, "endTcp": { "x": 10, "y": 20, "z": 10 }, "endToolAxis": { "i": 0.24184476264797528, "j": 0.24184476264797522, "k": 0.9396926207859084 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 10, "notes": [] } }, { "stepIndex": 35, "sourceFile": "helix_bc.ngc", "line": 17, "statement": "f# g2i#z# p# ;helix", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "feed-helix", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 4, "motionType": "arc", "feed": 1000, "startJoint": { "x": 10, "y": 20, "z": 10, "b": 20, "c": 45 }, "endJoint": { "x": 10, "y": 20, "z": 5, "b": 20, "c": 45 }, "startTcp": { "x": 10, "y": 20, "z": 10 }, "endTcp": { "x": 10, "y": 20, "z": 5 }, "endToolAxis": { "i": 0.24184476264797528, "j": 0.24184476264797522, "k": 0.9396926207859084 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 1000, "actualMmPerMin": 1000, "overridePercent": 100 }, "cutting": { "active": true, "cuttingSpeedMmPerMin": 1000 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 11, "notes": [] } }, { "stepIndex": 36, "sourceFile": "helix_bc.ngc", "line": 18, "statement": "M429 ;Identity kinematics", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-identity", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "identity", "code": "M429" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 1000, "actualMmPerMin": 1000, "overridePercent": 100 }, "cutting": { "active": true, "cuttingSpeedMmPerMin": 1000 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 1000, "actualMmPerMin": 1000, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 12, "notes": [] } }, { "stepIndex": 37, "sourceFile": "helix_bc.ngc", "line": 19, "statement": "g0 x0 y0 z# b0 c0 ;return to start", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-return-to-start", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 5, "motionType": "rapid", "feed": 2100, "startJoint": { "x": 10, "y": 20, "z": 5, "b": 20, "c": 45 }, "endJoint": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": 10, "y": 20, "z": 5 }, "endTcp": { "x": 0, "y": 0, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 1000, "actualMmPerMin": 1000, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 13, "notes": [] } }, { "stepIndex": 38, "sourceFile": "helix_bc.ngc", "line": 20, "statement": "g0 x[#<_x> + #] ;adjust restore", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-radius-restore", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 6, "motionType": "rapid", "feed": 2100, "startJoint": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": 10, "y": 0, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": 0, "y": 0, "z": 10 }, "endTcp": { "x": 10, "y": 0, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 14, "notes": [] } }, { "stepIndex": 39, "sourceFile": "helix_bc.ngc", "line": 21, "statement": "M428 ;XYZBC", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-tcp-xyzbc", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "tcp-xyzbc", "code": "M428" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 15, "notes": [] } }, { "stepIndex": 40, "sourceFile": "helix_bc.ngc", "line": 22, "statement": "oendsub", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": true, "sourceLineKind": "subroutine-boundary", "result": { "status": "ok", "operation": "subroutine-exit", "sourceLineKind": "subroutine-boundary", "executed": true, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 41, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 21, "statement": "; quadrant II", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": false, "sourceLineKind": "comment", "result": { "status": "ok", "operation": "comment-quadrant-II", "sourceLineKind": "comment", "executed": false, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 42, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 22, "statement": "M429 ;Identity kinematics", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-identity", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "identity", "code": "M429" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 16, "notes": [] } }, { "stepIndex": 43, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 23, "statement": "g53 g0 x0y0 z# b0 c0", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-machine-reset", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 7, "motionType": "rapid", "feed": 2100, "startJoint": { "x": 10, "y": 0, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": 10, "y": 0, "z": 10 }, "endTcp": { "x": 0, "y": 0, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 17, "notes": [] } }, { "stepIndex": 44, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 24, "statement": "g10l20p0 x0y0 z# b0 c0", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "offset", "result": { "status": "ok", "operation": "set-g54-offset", "sourceLineKind": "offset", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "workOffsetAfter": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "modalChange": { "coordinateSystem": "G54", "code": "G10 L20 P0" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 18, "notes": [] } }, { "stepIndex": 45, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 25, "statement": "g0 x-# y+# z#", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-to-quadrant-center", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 8, "motionType": "rapid", "feed": 2100, "startJoint": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": -20, "y": 20, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": 0, "y": 0, "z": 10 }, "endTcp": { "x": -20, "y": 20, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 19, "notes": [] } }, { "stepIndex": 46, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "statement": "o call [#][#][#][#][#][#][#][#]", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "call", "result": { "status": "ok", "operation": "call-subroutine", "sourceLineKind": "call", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 20, "notes": [] } }, { "stepIndex": 47, "sourceFile": "helix_bc.ngc", "line": 1, "statement": "; helix using switchkins (xyzbc) b,c angles", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": false, "sourceLineKind": "comment", "result": { "status": "ok", "operation": "comment", "sourceLineKind": "comment", "executed": false, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 48, "sourceFile": "helix_bc.ngc", "line": 2, "statement": "osub", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": true, "sourceLineKind": "subroutine-boundary", "result": { "status": "ok", "operation": "subroutine-enter", "sourceLineKind": "subroutine-boundary", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 49, "sourceFile": "helix_bc.ngc", "line": 3, "statement": "# = #1 (=10)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "zmax": 10 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 50, "sourceFile": "helix_bc.ngc", "line": 4, "statement": "# = #2 (= 5)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "zmin": 5 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 51, "sourceFile": "helix_bc.ngc", "line": 5, "statement": "# = #3 (=10)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "r": 10 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 52, "sourceFile": "helix_bc.ngc", "line": 6, "statement": "# = #4 (=1000)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "frate": 1000 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 53, "sourceFile": "helix_bc.ngc", "line": 7, "statement": "# = #5 (=3)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "n": 3 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 54, "sourceFile": "helix_bc.ngc", "line": 8, "statement": "# = #6 (=0 NA)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "a": 0 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 55, "sourceFile": "helix_bc.ngc", "line": 9, "statement": "# = #7 (=45)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "b": 20 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 56, "sourceFile": "helix_bc.ngc", "line": 10, "statement": "# = #8 (=20)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "c": 45 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 57, "sourceFile": "helix_bc.ngc", "line": 12, "statement": "M429 ;Identity kinematics", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-identity", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "identity", "code": "M429" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 21, "notes": [] } }, { "stepIndex": 58, "sourceFile": "helix_bc.ngc", "line": 13, "statement": "g0 x[#<_x> - #] ;adjust for radius", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-radius-adjust", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 9, "motionType": "rapid", "feed": 2100, "startJoint": { "x": -20, "y": 20, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": -30, "y": 20, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": -20, "y": 20, "z": 10 }, "endTcp": { "x": -30, "y": 20, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 22, "notes": [] } }, { "stepIndex": 59, "sourceFile": "helix_bc.ngc", "line": 14, "statement": "g10l20p0 x0y0 z# b0 c0 ;new g54", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": true, "sourceLineKind": "offset", "result": { "status": "ok", "operation": "set-g54-offset", "sourceLineKind": "offset", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "workOffsetAfter": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "modalChange": { "coordinateSystem": "G54", "code": "G10 L20 P0" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 23, "notes": [] } }, { "stepIndex": 60, "sourceFile": "helix_bc.ngc", "line": 15, "statement": "M428 ;XYZBC", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-tcp-xyzbc", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "tcp-xyzbc", "code": "M428" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 24, "notes": [] } }, { "stepIndex": 61, "sourceFile": "helix_bc.ngc", "line": 16, "statement": "g0b#c# ;exercise b,c", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-bc-orient", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 10, "motionType": "rapid", "feed": 2100, "startJoint": { "x": -30, "y": 20, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": -30, "y": 20, "z": 10, "b": 20, "c": 45 }, "startTcp": { "x": -30, "y": 20, "z": 10 }, "endTcp": { "x": -30, "y": 20, "z": 10 }, "endToolAxis": { "i": 0.24184476264797528, "j": 0.24184476264797522, "k": 0.9396926207859084 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 25, "notes": [] } }, { "stepIndex": 62, "sourceFile": "helix_bc.ngc", "line": 17, "statement": "f# g2i#z# p# ;helix", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "feed-helix", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 11, "motionType": "arc", "feed": 1000, "startJoint": { "x": -30, "y": 20, "z": 10, "b": 20, "c": 45 }, "endJoint": { "x": -30, "y": 20, "z": 5, "b": 20, "c": 45 }, "startTcp": { "x": -30, "y": 20, "z": 10 }, "endTcp": { "x": -30, "y": 20, "z": 5 }, "endToolAxis": { "i": 0.24184476264797528, "j": 0.24184476264797522, "k": 0.9396926207859084 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 1000, "actualMmPerMin": 1000, "overridePercent": 100 }, "cutting": { "active": true, "cuttingSpeedMmPerMin": 1000 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 26, "notes": [] } }, { "stepIndex": 63, "sourceFile": "helix_bc.ngc", "line": 18, "statement": "M429 ;Identity kinematics", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-identity", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "identity", "code": "M429" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 1000, "actualMmPerMin": 1000, "overridePercent": 100 }, "cutting": { "active": true, "cuttingSpeedMmPerMin": 1000 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 1000, "actualMmPerMin": 1000, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 27, "notes": [] } }, { "stepIndex": 64, "sourceFile": "helix_bc.ngc", "line": 19, "statement": "g0 x0 y0 z# b0 c0 ;return to start", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-return-to-start", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 12, "motionType": "rapid", "feed": 2100, "startJoint": { "x": -30, "y": 20, "z": 5, "b": 20, "c": 45 }, "endJoint": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": -30, "y": 20, "z": 5 }, "endTcp": { "x": 0, "y": 0, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 1000, "actualMmPerMin": 1000, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 28, "notes": [] } }, { "stepIndex": 65, "sourceFile": "helix_bc.ngc", "line": 20, "statement": "g0 x[#<_x> + #] ;adjust restore", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-radius-restore", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 13, "motionType": "rapid", "feed": 2100, "startJoint": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": 10, "y": 0, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": 0, "y": 0, "z": 10 }, "endTcp": { "x": 10, "y": 0, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 29, "notes": [] } }, { "stepIndex": 66, "sourceFile": "helix_bc.ngc", "line": 21, "statement": "M428 ;XYZBC", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-tcp-xyzbc", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "tcp-xyzbc", "code": "M428" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 30, "notes": [] } }, { "stepIndex": 67, "sourceFile": "helix_bc.ngc", "line": 22, "statement": "oendsub", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": true, "sourceLineKind": "subroutine-boundary", "result": { "status": "ok", "operation": "subroutine-exit", "sourceLineKind": "subroutine-boundary", "executed": true, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 68, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 28, "statement": "; quadrant III", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": false, "sourceLineKind": "comment", "result": { "status": "ok", "operation": "comment-quadrant-III", "sourceLineKind": "comment", "executed": false, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 69, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 29, "statement": "M429 ;Identity kinematics", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-identity", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "identity", "code": "M429" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 31, "notes": [] } }, { "stepIndex": 70, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 30, "statement": "g53 g0 x0y0 z# b0 c0", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-machine-reset", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 14, "motionType": "rapid", "feed": 2100, "startJoint": { "x": 10, "y": 0, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": 10, "y": 0, "z": 10 }, "endTcp": { "x": 0, "y": 0, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 32, "notes": [] } }, { "stepIndex": 71, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 31, "statement": "g10l20p0 x0y0 z# b0 c0", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "offset", "result": { "status": "ok", "operation": "set-g54-offset", "sourceLineKind": "offset", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "workOffsetAfter": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "modalChange": { "coordinateSystem": "G54", "code": "G10 L20 P0" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 33, "notes": [] } }, { "stepIndex": 72, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 32, "statement": "g0 x-# y-# z#", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-to-quadrant-center", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 15, "motionType": "rapid", "feed": 2100, "startJoint": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": -20, "y": -20, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": 0, "y": 0, "z": 10 }, "endTcp": { "x": -20, "y": -20, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 34, "notes": [] } }, { "stepIndex": 73, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "statement": "o call [#][#][#][#][#][#][#][#]", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "call", "result": { "status": "ok", "operation": "call-subroutine", "sourceLineKind": "call", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 35, "notes": [] } }, { "stepIndex": 74, "sourceFile": "helix_bc.ngc", "line": 1, "statement": "; helix using switchkins (xyzbc) b,c angles", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": false, "sourceLineKind": "comment", "result": { "status": "ok", "operation": "comment", "sourceLineKind": "comment", "executed": false, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 75, "sourceFile": "helix_bc.ngc", "line": 2, "statement": "osub", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": true, "sourceLineKind": "subroutine-boundary", "result": { "status": "ok", "operation": "subroutine-enter", "sourceLineKind": "subroutine-boundary", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 76, "sourceFile": "helix_bc.ngc", "line": 3, "statement": "# = #1 (=10)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "zmax": 10 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 77, "sourceFile": "helix_bc.ngc", "line": 4, "statement": "# = #2 (= 5)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "zmin": 5 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 78, "sourceFile": "helix_bc.ngc", "line": 5, "statement": "# = #3 (=10)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "r": 10 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 79, "sourceFile": "helix_bc.ngc", "line": 6, "statement": "# = #4 (=1000)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "frate": 1000 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 80, "sourceFile": "helix_bc.ngc", "line": 7, "statement": "# = #5 (=3)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "n": 3 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 81, "sourceFile": "helix_bc.ngc", "line": 8, "statement": "# = #6 (=0 NA)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "a": 0 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 82, "sourceFile": "helix_bc.ngc", "line": 9, "statement": "# = #7 (=45)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "b": 20 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 83, "sourceFile": "helix_bc.ngc", "line": 10, "statement": "# = #8 (=20)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "c": 45 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 84, "sourceFile": "helix_bc.ngc", "line": 12, "statement": "M429 ;Identity kinematics", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-identity", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "identity", "code": "M429" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 36, "notes": [] } }, { "stepIndex": 85, "sourceFile": "helix_bc.ngc", "line": 13, "statement": "g0 x[#<_x> - #] ;adjust for radius", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-radius-adjust", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 16, "motionType": "rapid", "feed": 2100, "startJoint": { "x": -20, "y": -20, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": -30, "y": -20, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": -20, "y": -20, "z": 10 }, "endTcp": { "x": -30, "y": -20, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 37, "notes": [] } }, { "stepIndex": 86, "sourceFile": "helix_bc.ngc", "line": 14, "statement": "g10l20p0 x0y0 z# b0 c0 ;new g54", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": true, "sourceLineKind": "offset", "result": { "status": "ok", "operation": "set-g54-offset", "sourceLineKind": "offset", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "workOffsetAfter": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "modalChange": { "coordinateSystem": "G54", "code": "G10 L20 P0" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 38, "notes": [] } }, { "stepIndex": 87, "sourceFile": "helix_bc.ngc", "line": 15, "statement": "M428 ;XYZBC", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-tcp-xyzbc", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "tcp-xyzbc", "code": "M428" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 39, "notes": [] } }, { "stepIndex": 88, "sourceFile": "helix_bc.ngc", "line": 16, "statement": "g0b#c# ;exercise b,c", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-bc-orient", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 17, "motionType": "rapid", "feed": 2100, "startJoint": { "x": -30, "y": -20, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": -30, "y": -20, "z": 10, "b": 20, "c": 45 }, "startTcp": { "x": -30, "y": -20, "z": 10 }, "endTcp": { "x": -30, "y": -20, "z": 10 }, "endToolAxis": { "i": 0.24184476264797528, "j": 0.24184476264797522, "k": 0.9396926207859084 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 40, "notes": [] } }, { "stepIndex": 89, "sourceFile": "helix_bc.ngc", "line": 17, "statement": "f# g2i#z# p# ;helix", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "feed-helix", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 18, "motionType": "arc", "feed": 1000, "startJoint": { "x": -30, "y": -20, "z": 10, "b": 20, "c": 45 }, "endJoint": { "x": -30, "y": -20, "z": 5, "b": 20, "c": 45 }, "startTcp": { "x": -30, "y": -20, "z": 10 }, "endTcp": { "x": -30, "y": -20, "z": 5 }, "endToolAxis": { "i": 0.24184476264797528, "j": 0.24184476264797522, "k": 0.9396926207859084 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 1000, "actualMmPerMin": 1000, "overridePercent": 100 }, "cutting": { "active": true, "cuttingSpeedMmPerMin": 1000 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 41, "notes": [] } }, { "stepIndex": 90, "sourceFile": "helix_bc.ngc", "line": 18, "statement": "M429 ;Identity kinematics", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-identity", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "identity", "code": "M429" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 1000, "actualMmPerMin": 1000, "overridePercent": 100 }, "cutting": { "active": true, "cuttingSpeedMmPerMin": 1000 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 1000, "actualMmPerMin": 1000, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 42, "notes": [] } }, { "stepIndex": 91, "sourceFile": "helix_bc.ngc", "line": 19, "statement": "g0 x0 y0 z# b0 c0 ;return to start", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-return-to-start", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 19, "motionType": "rapid", "feed": 2100, "startJoint": { "x": -30, "y": -20, "z": 5, "b": 20, "c": 45 }, "endJoint": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": -30, "y": -20, "z": 5 }, "endTcp": { "x": 0, "y": 0, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 1000, "actualMmPerMin": 1000, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 43, "notes": [] } }, { "stepIndex": 92, "sourceFile": "helix_bc.ngc", "line": 20, "statement": "g0 x[#<_x> + #] ;adjust restore", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-radius-restore", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 20, "motionType": "rapid", "feed": 2100, "startJoint": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": 10, "y": 0, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": 0, "y": 0, "z": 10 }, "endTcp": { "x": 10, "y": 0, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 44, "notes": [] } }, { "stepIndex": 93, "sourceFile": "helix_bc.ngc", "line": 21, "statement": "M428 ;XYZBC", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-tcp-xyzbc", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "tcp-xyzbc", "code": "M428" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 45, "notes": [] } }, { "stepIndex": 94, "sourceFile": "helix_bc.ngc", "line": 22, "statement": "oendsub", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": true, "sourceLineKind": "subroutine-boundary", "result": { "status": "ok", "operation": "subroutine-exit", "sourceLineKind": "subroutine-boundary", "executed": true, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 95, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 35, "statement": "; quadrant IV", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": false, "sourceLineKind": "comment", "result": { "status": "ok", "operation": "comment-quadrant-IV", "sourceLineKind": "comment", "executed": false, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 96, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 36, "statement": "M429 ;Identity kinematics", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-identity", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "identity", "code": "M429" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 46, "notes": [] } }, { "stepIndex": 97, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 37, "statement": "g53 g0 x0y0 z# b0 c0", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-machine-reset", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 21, "motionType": "rapid", "feed": 2100, "startJoint": { "x": 10, "y": 0, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": 10, "y": 0, "z": 10 }, "endTcp": { "x": 0, "y": 0, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 47, "notes": [] } }, { "stepIndex": 98, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 38, "statement": "g10l20p0 x0y0 z# b0 c0", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "offset", "result": { "status": "ok", "operation": "set-g54-offset", "sourceLineKind": "offset", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "workOffsetAfter": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "modalChange": { "coordinateSystem": "G54", "code": "G10 L20 P0" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 48, "notes": [] } }, { "stepIndex": 99, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 39, "statement": "g0 x+# y-# z#", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-to-quadrant-center", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 22, "motionType": "rapid", "feed": 2100, "startJoint": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": 20, "y": -20, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": 0, "y": 0, "z": 10 }, "endTcp": { "x": 20, "y": -20, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 49, "notes": [] } }, { "stepIndex": 100, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "statement": "o call [#][#][#][#][#][#][#][#]", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "call", "result": { "status": "ok", "operation": "call-subroutine", "sourceLineKind": "call", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 50, "notes": [] } }, { "stepIndex": 101, "sourceFile": "helix_bc.ngc", "line": 1, "statement": "; helix using switchkins (xyzbc) b,c angles", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": false, "sourceLineKind": "comment", "result": { "status": "ok", "operation": "comment", "sourceLineKind": "comment", "executed": false, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 102, "sourceFile": "helix_bc.ngc", "line": 2, "statement": "osub", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": true, "sourceLineKind": "subroutine-boundary", "result": { "status": "ok", "operation": "subroutine-enter", "sourceLineKind": "subroutine-boundary", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 103, "sourceFile": "helix_bc.ngc", "line": 3, "statement": "# = #1 (=10)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "zmax": 10 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 104, "sourceFile": "helix_bc.ngc", "line": 4, "statement": "# = #2 (= 5)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "zmin": 5 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 105, "sourceFile": "helix_bc.ngc", "line": 5, "statement": "# = #3 (=10)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "r": 10 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 106, "sourceFile": "helix_bc.ngc", "line": 6, "statement": "# = #4 (=1000)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "frate": 1000 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 107, "sourceFile": "helix_bc.ngc", "line": 7, "statement": "# = #5 (=3)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "n": 3 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 108, "sourceFile": "helix_bc.ngc", "line": 8, "statement": "# = #6 (=0 NA)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "a": 0 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 109, "sourceFile": "helix_bc.ngc", "line": 9, "statement": "# = #7 (=45)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "b": 20 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 110, "sourceFile": "helix_bc.ngc", "line": 10, "statement": "# = #8 (=20)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "c": 45 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 111, "sourceFile": "helix_bc.ngc", "line": 12, "statement": "M429 ;Identity kinematics", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-identity", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "identity", "code": "M429" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 51, "notes": [] } }, { "stepIndex": 112, "sourceFile": "helix_bc.ngc", "line": 13, "statement": "g0 x[#<_x> - #] ;adjust for radius", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-radius-adjust", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 23, "motionType": "rapid", "feed": 2100, "startJoint": { "x": 20, "y": -20, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": 10, "y": -20, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": 20, "y": -20, "z": 10 }, "endTcp": { "x": 10, "y": -20, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 52, "notes": [] } }, { "stepIndex": 113, "sourceFile": "helix_bc.ngc", "line": 14, "statement": "g10l20p0 x0y0 z# b0 c0 ;new g54", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": true, "sourceLineKind": "offset", "result": { "status": "ok", "operation": "set-g54-offset", "sourceLineKind": "offset", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "workOffsetAfter": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "modalChange": { "coordinateSystem": "G54", "code": "G10 L20 P0" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 53, "notes": [] } }, { "stepIndex": 114, "sourceFile": "helix_bc.ngc", "line": 15, "statement": "M428 ;XYZBC", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-tcp-xyzbc", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "tcp-xyzbc", "code": "M428" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 54, "notes": [] } }, { "stepIndex": 115, "sourceFile": "helix_bc.ngc", "line": 16, "statement": "g0b#c# ;exercise b,c", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-bc-orient", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 24, "motionType": "rapid", "feed": 2100, "startJoint": { "x": 10, "y": -20, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": 10, "y": -20, "z": 10, "b": 20, "c": 45 }, "startTcp": { "x": 10, "y": -20, "z": 10 }, "endTcp": { "x": 10, "y": -20, "z": 10 }, "endToolAxis": { "i": 0.24184476264797528, "j": 0.24184476264797522, "k": 0.9396926207859084 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 55, "notes": [] } }, { "stepIndex": 116, "sourceFile": "helix_bc.ngc", "line": 17, "statement": "f# g2i#z# p# ;helix", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "feed-helix", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 25, "motionType": "arc", "feed": 1000, "startJoint": { "x": 10, "y": -20, "z": 10, "b": 20, "c": 45 }, "endJoint": { "x": 10, "y": -20, "z": 5, "b": 20, "c": 45 }, "startTcp": { "x": 10, "y": -20, "z": 10 }, "endTcp": { "x": 10, "y": -20, "z": 5 }, "endToolAxis": { "i": 0.24184476264797528, "j": 0.24184476264797522, "k": 0.9396926207859084 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 1000, "actualMmPerMin": 1000, "overridePercent": 100 }, "cutting": { "active": true, "cuttingSpeedMmPerMin": 1000 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 56, "notes": [] } }, { "stepIndex": 117, "sourceFile": "helix_bc.ngc", "line": 18, "statement": "M429 ;Identity kinematics", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-identity", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "identity", "code": "M429" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 1000, "actualMmPerMin": 1000, "overridePercent": 100 }, "cutting": { "active": true, "cuttingSpeedMmPerMin": 1000 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 1000, "actualMmPerMin": 1000, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 57, "notes": [] } }, { "stepIndex": 118, "sourceFile": "helix_bc.ngc", "line": 19, "statement": "g0 x0 y0 z# b0 c0 ;return to start", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-return-to-start", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 26, "motionType": "rapid", "feed": 2100, "startJoint": { "x": 10, "y": -20, "z": 5, "b": 20, "c": 45 }, "endJoint": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": 10, "y": -20, "z": 5 }, "endTcp": { "x": 0, "y": 0, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 1000, "actualMmPerMin": 1000, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 58, "notes": [] } }, { "stepIndex": 119, "sourceFile": "helix_bc.ngc", "line": 20, "statement": "g0 x[#<_x> + #] ;adjust restore", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-radius-restore", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 27, "motionType": "rapid", "feed": 2100, "startJoint": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": 10, "y": 0, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": 0, "y": 0, "z": 10 }, "endTcp": { "x": 10, "y": 0, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 59, "notes": [] } }, { "stepIndex": 120, "sourceFile": "helix_bc.ngc", "line": 21, "statement": "M428 ;XYZBC", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-tcp-xyzbc", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "tcp-xyzbc", "code": "M428" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 60, "notes": [] } }, { "stepIndex": 121, "sourceFile": "helix_bc.ngc", "line": 22, "statement": "oendsub", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": true, "sourceLineKind": "subroutine-boundary", "result": { "status": "ok", "operation": "subroutine-exit", "sourceLineKind": "subroutine-boundary", "executed": true, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 122, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 42, "statement": ";final position", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": false, "sourceLineKind": "comment", "result": { "status": "ok", "operation": "comment-final-position", "sourceLineKind": "comment", "executed": false, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 123, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 43, "statement": "M429 ;Identity kinematics", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-identity", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "identity", "code": "M429" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 61, "notes": [] } }, { "stepIndex": 124, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 44, "statement": "g53 g0 x0y0 z# ;MACHINE coordinates", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-final-machine-reset", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 28, "motionType": "rapid", "feed": 2100, "startJoint": { "x": 10, "y": 0, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": 10, "y": 0, "z": 10 }, "endTcp": { "x": 0, "y": 0, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 62, "notes": [] } }, { "stepIndex": 125, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 45, "statement": "g10l20p0 x0y0 z# ;new g54", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "offset", "result": { "status": "ok", "operation": "set-g54-offset", "sourceLineKind": "offset", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "workOffsetAfter": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "modalChange": { "coordinateSystem": "G54", "code": "G10 L20 P0" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 63, "notes": [] } }, { "stepIndex": 126, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 47, "statement": "oendsub", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "subroutine-boundary", "result": { "status": "ok", "operation": "subroutine-exit", "sourceLineKind": "subroutine-boundary", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 127, "sourceFile": "xyzbc_switchkins.ngc", "line": 3, "statement": "m2", "callDepth": 0, "callStack": [], "executed": true, "sourceLineKind": "program-end", "result": { "status": "ok", "operation": "program-end", "sourceLineKind": "program-end", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "program": "ended", "code": "M2" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } } ], "summary": { "motionStepCount": 29, "switchkinsStepCount": 21, "parameterAssignmentStepCount": 41, "workOffsetStepCount": 9, "callStepCount": 5, "noMotionStepCount": 99, "finalJoint": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "finalKinematics": "identity" }, "semanticBoundary": "complete_gcode_execution_process_expanded_from_linuxcnc_xyzbc_trt_sources" }, "currentVelocity": 859.2299999999999, "operatorMessage": "task/HAL status tick 159", "pauseButton": { "action": "pause-resume", "paused": "false", "title": "Pause program", "ariaPressed": "false" }, "canvasDataset": { "width": 383, "height": 572, "threeToolAxis": "{\"x\":0.007,\"y\":0,\"z\":1}", "threeToolGlyphAxis": "{\"x\":0.007,\"y\":0,\"z\":1}" }, "canvasToolhead": { "x": 0, "y": 0, "z": 0.01 }, "canvasVismachPins": null, "programPaneDataset": { "region": "program", "liveSourceFile": "helix_bc.ngc", "liveSourceLine": "20", "liveSampleIndex": "312", "liveExecutedSamples": "313", "gcodeExecutionStatus": "ok", "gcodeExecutionStepCount": "128", "gcodeMotionStepCount": "29", "gcodeParameterStepCount": "41", "gcodeCallDepth": "2" }, "processMonitorDataset": { "linuxcncProcessMonitor": "", "sourceMode": "linuxcnc-task-motion-hal-wasm", "taskHalReady": "true", "activeLine": "20", "liveSourceFile": "helix_bc.ngc", "liveSourceLine": "20", "liveSampleIndex": "312" } }, "after": { "runState": "paused", "taskState": "on", "powerOn": true, "estopActive": false, "allHomed": true, "mode": "auto", "interpState": "paused", "taskPaused": true, "motionPaused": true, "activeLine": 20, "sampleIndex": 313, "programExecutionSourceMode": "linuxcnc-task-motion-hal-wasm", "programUiExecution": { "apiName": "web-rtcp-5axis-ui-gcode-live-execution", "status": "paused", "source": "programAxisPreviewPath.samples", "samplePeriodMs": 50, "sampleIndex": 313, "sampleCount": 1300, "executedSampleCount": 314, "timeMs": 15650, "activeProgram": "configs/sim/axis/vismach/5axis/table-rotary-tilting/demos/xyzbc_switchkins.ngc", "sourceFile": "helix_bc.ngc", "line": 20, "statement": "g0 x[#<_x> + #]", "operation": "rapid-radius-restore", "executionIndex": 14, "gcodeStepIndex": 38, "segmentIndex": 6, "motionType": "rapid", "activeKinematics": "identity", "joint": { "x": 2.33333, "y": 0, "z": 10, "a": 0, "b": 0, "c": 0 }, "tcp": { "x": 2.33333, "y": 0, "z": 10 }, "toolAxis": { "i": 0, "j": 0, "k": 1 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "machineState": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "semanticBoundary": "ui_updates_from_real_expanded_linuxcnc_gcode_sample_stream" }, "currentVelocity": 0, "operatorMessage": "task/HAL paused status monitor running" } }, { "label": "第二次暂停保持 5 秒", "at": "2026-07-09T17:32:49.968Z", "durationMs": 6398, "state": { "runState": "paused", "taskState": "on", "powerOn": true, "estopActive": false, "allHomed": true, "mode": "auto", "interpState": "paused", "taskPaused": true, "motionPaused": true, "activeLine": 20, "sampleIndex": 313, "programExecutionSourceMode": "linuxcnc-task-motion-hal-wasm", "programUiExecution": { "apiName": "web-rtcp-5axis-ui-gcode-live-execution", "status": "paused", "source": "programAxisPreviewPath.samples", "samplePeriodMs": 50, "sampleIndex": 313, "sampleCount": 1300, "executedSampleCount": 314, "timeMs": 15650, "activeProgram": "configs/sim/axis/vismach/5axis/table-rotary-tilting/demos/xyzbc_switchkins.ngc", "sourceFile": "helix_bc.ngc", "line": 20, "statement": "g0 x[#<_x> + #]", "operation": "rapid-radius-restore", "executionIndex": 14, "gcodeStepIndex": 38, "segmentIndex": 6, "motionType": "rapid", "activeKinematics": "identity", "joint": { "x": 2.33333, "y": 0, "z": 10, "a": 0, "b": 0, "c": 0 }, "tcp": { "x": 2.33333, "y": 0, "z": 10 }, "toolAxis": { "i": 0, "j": 0, "k": 1 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "machineState": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "semanticBoundary": "ui_updates_from_real_expanded_linuxcnc_gcode_sample_stream" }, "currentVelocity": 0, "operatorMessage": "task/HAL status tick 139" }, "frozenPosition": { "axisPose": { "x": 2.33333, "y": 0, "z": 10, "a": 0, "b": 0, "c": 0 }, "dro": { "x": 2.33333, "y": 0, "z": 10, "a": 0, "b": 0, "c": 0, "tcpX": 2.33333, "tcpY": 0, "tcpZ": 10, "dtgX": 0, "dtgY": 0, "dtgZ": 0 }, "canvasToolhead": { "x": 0.002, "y": 0, "z": 0.01 }, "canvasVismachPins": null }, "movedDuringHold": null }, { "label": "第二次继续执行", "selector": "[data-tool-id=\"tbtn_pause\"]", "clickMethod": "dom-element-click", "at": "2026-07-09T17:32:53.091Z", "elapsedMs": 3020, "before": { "machineProfile": "xyzbc-trt", "selectedGcodeSourceRel": "configs/sim/axis/vismach/5axis/table-rotary-tilting/demos/xyzbc_switchkins.ngc", "taskHalLoaded": true, "taskHalRuntimeReadiness": { "apiName": "web-rtcp-5axis-linuxcnc-task-hal-runtime-readiness", "loaded": true, "semanticBoundary": "linuxcnc_task_motion_hal_wasm_simulation_runtime", "sdkSemanticBoundary": "linuxcnc_task_motion_hal_wasm_phase4_minimal", "executionContext": "direct", "workerUrl": null, "taskRuntimeReady": true, "motionRuntimeReady": true, "halRuntimeReady": true, "halSyncReady": true, "nativeTaskReady": true, "nativeHalSyncReady": true, "hardwareDrive": false, "hostRealtimeKernel": false, "externalUserMProcessReady": false }, "runState": "paused", "taskState": "on", "powerOn": true, "estopActive": false, "allHomed": true, "mode": "auto", "interpState": "paused", "interpResumeState": "reading", "taskPaused": true, "motionPaused": true, "rtcpState": "off", "kinsType": "identity", "activeLine": 20, "programExecutionSourceMode": "linuxcnc-task-motion-hal-wasm", "programExecutionSampleIndex": 313, "programRuntimeFeedback": { "apiName": "web-rtcp-5axis-program-runtime-feedback", "sourceMode": "linuxcnc-task-motion-hal-wasm", "semanticBoundary": "linuxcnc_task_motion_hal_wasm_simulation_runtime", "sampleIndex": 313, "motionIndex": 6, "line": 20, "motionProgramLine": 20, "halProgramLine": 20, "activeLineSource": "emc-status", "activeLineHalSynced": true, "type": "TASK_MOTION", "paused": true, "timeSeconds": 19.68, "axisPose": { "x": 2.33333, "y": 0, "z": 10, "a": 0, "b": 0, "c": 0 }, "currentVelocityMmPerMin": 0, "requestedVelocityMmPerMin": 0, "distanceToGo": 1, "dtg": { "x": 0, "y": 0, "z": 0 }, "queueDepth": 0, "activeDepth": 1, "cycle": 19680, "taskCycle": 1968, "halChangedPinCount": 0, "tcp": { "x": 2.33333, "y": 0, "z": 10 } }, "axisPose": { "x": 2.33333, "y": 0, "z": 10, "a": 0, "b": 0, "c": 0 }, "dro": { "x": 2.33333, "y": 0, "z": 10, "a": 0, "b": 0, "c": 0, "tcpX": 2.33333, "tcpY": 0, "tcpZ": 10, "dtgX": 0, "dtgY": 0, "dtgZ": 0 }, "programUiExecution": { "apiName": "web-rtcp-5axis-ui-gcode-live-execution", "status": "paused", "source": "programAxisPreviewPath.samples", "samplePeriodMs": 50, "sampleIndex": 313, "sampleCount": 1300, "executedSampleCount": 314, "timeMs": 15650, "activeProgram": "configs/sim/axis/vismach/5axis/table-rotary-tilting/demos/xyzbc_switchkins.ngc", "sourceFile": "helix_bc.ngc", "line": 20, "statement": "g0 x[#<_x> + #]", "operation": "rapid-radius-restore", "executionIndex": 14, "gcodeStepIndex": 38, "segmentIndex": 6, "motionType": "rapid", "activeKinematics": "identity", "joint": { "x": 2.33333, "y": 0, "z": 10, "a": 0, "b": 0, "c": 0 }, "tcp": { "x": 2.33333, "y": 0, "z": 10 }, "toolAxis": { "i": 0, "j": 0, "k": 1 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "machineState": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "semanticBoundary": "ui_updates_from_real_expanded_linuxcnc_gcode_sample_stream" }, "samplePeriodMs": 50, "sampleCount": 1300, "gcodeExecutionProcess": { "apiName": "linuxcnc-xyzbc-trt-gcode-complete-execution-process", "status": "ok", "program": "xyzbc_switchkins.ngc", "sourceFiles": [ { "sourceFile": "xyzbc_switchkins.ngc", "lineCount": 3 }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "lineCount": 41 }, { "sourceFile": "helix_bc.ngc", "lineCount": 21 } ], "executionStepCount": 128, "sourceLineCoverage": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 1, "statement": "; zmax zmin r frate n a b c dist", "sourceLineKind": "comment", "visitCount": 1, "producedMotionCount": 0, "operations": [ "comment" ] }, { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "statement": "o call [10] [5] [10][1000][3][0][20][45][20]", "sourceLineKind": "call", "visitCount": 1, "producedMotionCount": 0, "operations": [ "call-subroutine" ] }, { "sourceFile": "xyzbc_switchkins.ngc", "line": 3, "statement": "m2", "sourceLineKind": "mcode", "visitCount": 1, "producedMotionCount": 0, "operations": [ "program-end" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 1, "statement": "; ngcgui-compatible subroutine", "sourceLineKind": "comment", "visitCount": 1, "producedMotionCount": 0, "operations": [ "comment" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 2, "statement": "(info: helix in each quadrant at angles B,C)", "sourceLineKind": "comment", "visitCount": 1, "producedMotionCount": 0, "operations": [ "info-comment" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 3, "statement": "osub", "sourceLineKind": "subroutine-boundary", "visitCount": 1, "producedMotionCount": 0, "operations": [ "subroutine-enter" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 4, "statement": "# = #1 (=10)", "sourceLineKind": "assignment", "visitCount": 1, "producedMotionCount": 0, "operations": [ "parameter-assignment" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 5, "statement": "# = #2 (= 5)", "sourceLineKind": "assignment", "visitCount": 1, "producedMotionCount": 0, "operations": [ "parameter-assignment" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 6, "statement": "# = #3 (=10 radius)", "sourceLineKind": "assignment", "visitCount": 1, "producedMotionCount": 0, "operations": [ "parameter-assignment" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 7, "statement": "# = #4 (=1000 feedrate)", "sourceLineKind": "assignment", "visitCount": 1, "producedMotionCount": 0, "operations": [ "parameter-assignment" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 8, "statement": "# = #5 (=3 n circles)", "sourceLineKind": "assignment", "visitCount": 1, "producedMotionCount": 0, "operations": [ "parameter-assignment" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 9, "statement": "# = #6 (=0 A angle NA)", "sourceLineKind": "assignment", "visitCount": 1, "producedMotionCount": 0, "operations": [ "parameter-assignment" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 10, "statement": "# = #7 (=30 B angle)", "sourceLineKind": "assignment", "visitCount": 1, "producedMotionCount": 0, "operations": [ "parameter-assignment" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 11, "statement": "# = #8 (=45 C angle)", "sourceLineKind": "assignment", "visitCount": 1, "producedMotionCount": 0, "operations": [ "parameter-assignment" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 12, "statement": "# = #9 (=20 distance)", "sourceLineKind": "assignment", "visitCount": 1, "producedMotionCount": 0, "operations": [ "parameter-assignment" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 14, "statement": "; quadrant I", "sourceLineKind": "comment", "visitCount": 1, "producedMotionCount": 0, "operations": [ "comment-quadrant-I" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 15, "statement": "M429 ;Identity kinematics", "sourceLineKind": "mcode", "visitCount": 1, "producedMotionCount": 0, "operations": [ "switchkins-identity" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 16, "statement": "g53 g0 x0y0 z# b0 c0 ;MACHINE coordinates", "sourceLineKind": "motion", "visitCount": 1, "producedMotionCount": 1, "operations": [ "rapid-machine-reset" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 17, "statement": "g10l20p0 x0y0 z# b0 c0 ;new g54", "sourceLineKind": "offset", "visitCount": 1, "producedMotionCount": 0, "operations": [ "set-g54-offset" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 18, "statement": "g0 x+# y+# z# ;move to pattern center position", "sourceLineKind": "motion", "visitCount": 1, "producedMotionCount": 1, "operations": [ "rapid-to-quadrant-center" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "statement": "o call [#][#][#][#][#][#][#][#]", "sourceLineKind": "call", "visitCount": 1, "producedMotionCount": 0, "operations": [ "call-subroutine" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 21, "statement": "; quadrant II", "sourceLineKind": "comment", "visitCount": 1, "producedMotionCount": 0, "operations": [ "comment-quadrant-II" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 22, "statement": "M429 ;Identity kinematics", "sourceLineKind": "mcode", "visitCount": 1, "producedMotionCount": 0, "operations": [ "switchkins-identity" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 23, "statement": "g53 g0 x0y0 z# b0 c0", "sourceLineKind": "motion", "visitCount": 1, "producedMotionCount": 1, "operations": [ "rapid-machine-reset" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 24, "statement": "g10l20p0 x0y0 z# b0 c0", "sourceLineKind": "offset", "visitCount": 1, "producedMotionCount": 0, "operations": [ "set-g54-offset" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 25, "statement": "g0 x-# y+# z#", "sourceLineKind": "motion", "visitCount": 1, "producedMotionCount": 1, "operations": [ "rapid-to-quadrant-center" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "statement": "o call [#][#][#][#][#][#][#][#]", "sourceLineKind": "call", "visitCount": 1, "producedMotionCount": 0, "operations": [ "call-subroutine" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 28, "statement": "; quadrant III", "sourceLineKind": "comment", "visitCount": 1, "producedMotionCount": 0, "operations": [ "comment-quadrant-III" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 29, "statement": "M429 ;Identity kinematics", "sourceLineKind": "mcode", "visitCount": 1, "producedMotionCount": 0, "operations": [ "switchkins-identity" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 30, "statement": "g53 g0 x0y0 z# b0 c0", "sourceLineKind": "motion", "visitCount": 1, "producedMotionCount": 1, "operations": [ "rapid-machine-reset" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 31, "statement": "g10l20p0 x0y0 z# b0 c0", "sourceLineKind": "offset", "visitCount": 1, "producedMotionCount": 0, "operations": [ "set-g54-offset" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 32, "statement": "g0 x-# y-# z#", "sourceLineKind": "motion", "visitCount": 1, "producedMotionCount": 1, "operations": [ "rapid-to-quadrant-center" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "statement": "o call [#][#][#][#][#][#][#][#]", "sourceLineKind": "call", "visitCount": 1, "producedMotionCount": 0, "operations": [ "call-subroutine" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 35, "statement": "; quadrant IV", "sourceLineKind": "comment", "visitCount": 1, "producedMotionCount": 0, "operations": [ "comment-quadrant-IV" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 36, "statement": "M429 ;Identity kinematics", "sourceLineKind": "mcode", "visitCount": 1, "producedMotionCount": 0, "operations": [ "switchkins-identity" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 37, "statement": "g53 g0 x0y0 z# b0 c0", "sourceLineKind": "motion", "visitCount": 1, "producedMotionCount": 1, "operations": [ "rapid-machine-reset" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 38, "statement": "g10l20p0 x0y0 z# b0 c0", "sourceLineKind": "offset", "visitCount": 1, "producedMotionCount": 0, "operations": [ "set-g54-offset" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 39, "statement": "g0 x+# y-# z#", "sourceLineKind": "motion", "visitCount": 1, "producedMotionCount": 1, "operations": [ "rapid-to-quadrant-center" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "statement": "o call [#][#][#][#][#][#][#][#]", "sourceLineKind": "call", "visitCount": 1, "producedMotionCount": 0, "operations": [ "call-subroutine" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 42, "statement": ";final position", "sourceLineKind": "comment", "visitCount": 1, "producedMotionCount": 0, "operations": [ "comment-final-position" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 43, "statement": "M429 ;Identity kinematics", "sourceLineKind": "mcode", "visitCount": 1, "producedMotionCount": 0, "operations": [ "switchkins-identity" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 44, "statement": "g53 g0 x0y0 z# ;MACHINE coordinates", "sourceLineKind": "motion", "visitCount": 1, "producedMotionCount": 1, "operations": [ "rapid-final-machine-reset" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 45, "statement": "g10l20p0 x0y0 z# ;new g54", "sourceLineKind": "offset", "visitCount": 1, "producedMotionCount": 0, "operations": [ "set-g54-offset" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 47, "statement": "oendsub", "sourceLineKind": "subroutine-boundary", "visitCount": 1, "producedMotionCount": 0, "operations": [ "subroutine-exit" ] }, { "sourceFile": "helix_bc.ngc", "line": 1, "statement": "; helix using switchkins (xyzbc) b,c angles", "sourceLineKind": "comment", "visitCount": 4, "producedMotionCount": 0, "operations": [ "comment" ] }, { "sourceFile": "helix_bc.ngc", "line": 2, "statement": "osub", "sourceLineKind": "subroutine-boundary", "visitCount": 4, "producedMotionCount": 0, "operations": [ "subroutine-enter" ] }, { "sourceFile": "helix_bc.ngc", "line": 3, "statement": "# = #1 (=10)", "sourceLineKind": "assignment", "visitCount": 4, "producedMotionCount": 0, "operations": [ "parameter-assignment" ] }, { "sourceFile": "helix_bc.ngc", "line": 4, "statement": "# = #2 (= 5)", "sourceLineKind": "assignment", "visitCount": 4, "producedMotionCount": 0, "operations": [ "parameter-assignment" ] }, { "sourceFile": "helix_bc.ngc", "line": 5, "statement": "# = #3 (=10)", "sourceLineKind": "assignment", "visitCount": 4, "producedMotionCount": 0, "operations": [ "parameter-assignment" ] }, { "sourceFile": "helix_bc.ngc", "line": 6, "statement": "# = #4 (=1000)", "sourceLineKind": "assignment", "visitCount": 4, "producedMotionCount": 0, "operations": [ "parameter-assignment" ] }, { "sourceFile": "helix_bc.ngc", "line": 7, "statement": "# = #5 (=3)", "sourceLineKind": "assignment", "visitCount": 4, "producedMotionCount": 0, "operations": [ "parameter-assignment" ] }, { "sourceFile": "helix_bc.ngc", "line": 8, "statement": "# = #6 (=0 NA)", "sourceLineKind": "assignment", "visitCount": 4, "producedMotionCount": 0, "operations": [ "parameter-assignment" ] }, { "sourceFile": "helix_bc.ngc", "line": 9, "statement": "# = #7 (=45)", "sourceLineKind": "assignment", "visitCount": 4, "producedMotionCount": 0, "operations": [ "parameter-assignment" ] }, { "sourceFile": "helix_bc.ngc", "line": 10, "statement": "# = #8 (=20)", "sourceLineKind": "assignment", "visitCount": 4, "producedMotionCount": 0, "operations": [ "parameter-assignment" ] }, { "sourceFile": "helix_bc.ngc", "line": 12, "statement": "M429 ;Identity kinematics", "sourceLineKind": "mcode", "visitCount": 4, "producedMotionCount": 0, "operations": [ "switchkins-identity" ] }, { "sourceFile": "helix_bc.ngc", "line": 13, "statement": "g0 x[#<_x> - #] ;adjust for radius", "sourceLineKind": "motion", "visitCount": 4, "producedMotionCount": 4, "operations": [ "rapid-radius-adjust" ] }, { "sourceFile": "helix_bc.ngc", "line": 14, "statement": "g10l20p0 x0y0 z# b0 c0 ;new g54", "sourceLineKind": "offset", "visitCount": 4, "producedMotionCount": 0, "operations": [ "set-g54-offset" ] }, { "sourceFile": "helix_bc.ngc", "line": 15, "statement": "M428 ;XYZBC", "sourceLineKind": "mcode", "visitCount": 4, "producedMotionCount": 0, "operations": [ "switchkins-tcp-xyzbc" ] }, { "sourceFile": "helix_bc.ngc", "line": 16, "statement": "g0b#c# ;exercise b,c", "sourceLineKind": "motion", "visitCount": 4, "producedMotionCount": 4, "operations": [ "rapid-bc-orient" ] }, { "sourceFile": "helix_bc.ngc", "line": 17, "statement": "f# g2i#z# p# ;helix", "sourceLineKind": "motion", "visitCount": 4, "producedMotionCount": 4, "operations": [ "feed-helix" ] }, { "sourceFile": "helix_bc.ngc", "line": 18, "statement": "M429 ;Identity kinematics", "sourceLineKind": "mcode", "visitCount": 4, "producedMotionCount": 0, "operations": [ "switchkins-identity" ] }, { "sourceFile": "helix_bc.ngc", "line": 19, "statement": "g0 x0 y0 z# b0 c0 ;return to start", "sourceLineKind": "motion", "visitCount": 4, "producedMotionCount": 4, "operations": [ "rapid-return-to-start" ] }, { "sourceFile": "helix_bc.ngc", "line": 20, "statement": "g0 x[#<_x> + #] ;adjust restore", "sourceLineKind": "motion", "visitCount": 4, "producedMotionCount": 4, "operations": [ "rapid-radius-restore" ] }, { "sourceFile": "helix_bc.ngc", "line": 21, "statement": "M428 ;XYZBC", "sourceLineKind": "mcode", "visitCount": 4, "producedMotionCount": 0, "operations": [ "switchkins-tcp-xyzbc" ] }, { "sourceFile": "helix_bc.ngc", "line": 22, "statement": "oendsub", "sourceLineKind": "subroutine-boundary", "visitCount": 4, "producedMotionCount": 0, "operations": [ "subroutine-exit" ] } ], "executionSteps": [ { "stepIndex": 0, "sourceFile": "xyzbc_switchkins.ngc", "line": 1, "statement": "; zmax zmin r frate n a b c dist", "callDepth": 0, "callStack": [], "executed": false, "sourceLineKind": "comment", "result": { "status": "ok", "operation": "comment", "sourceLineKind": "comment", "executed": false, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 1, "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "statement": "o call [10] [5] [10][1000][3][0][20][45][20]", "callDepth": 0, "callStack": [], "executed": true, "sourceLineKind": "call", "result": { "status": "ok", "operation": "call-subroutine", "sourceLineKind": "call", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 0, "notes": [] } }, { "stepIndex": 2, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 1, "statement": "; ngcgui-compatible subroutine", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": false, "sourceLineKind": "comment", "result": { "status": "ok", "operation": "comment", "sourceLineKind": "comment", "executed": false, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 3, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 2, "statement": "(info: helix in each quadrant at angles B,C)", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": false, "sourceLineKind": "comment", "result": { "status": "ok", "operation": "info-comment", "sourceLineKind": "comment", "executed": false, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 4, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 3, "statement": "osub", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "subroutine-boundary", "result": { "status": "ok", "operation": "subroutine-enter", "sourceLineKind": "subroutine-boundary", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 5, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 4, "statement": "# = #1 (=10)", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": {}, "parametersChanged": { "zmax": 10 }, "parametersAfter": { "zmax": 10 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 6, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 5, "statement": "# = #2 (= 5)", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10 }, "parametersChanged": { "zmin": 5 }, "parametersAfter": { "zmax": 10, "zmin": 5 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 7, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 6, "statement": "# = #3 (=10 radius)", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5 }, "parametersChanged": { "r": 10 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 8, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 7, "statement": "# = #4 (=1000 feedrate)", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10 }, "parametersChanged": { "frate": 1000 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 9, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 8, "statement": "# = #5 (=3 n circles)", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000 }, "parametersChanged": { "n": 3 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 10, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 9, "statement": "# = #6 (=0 A angle NA)", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3 }, "parametersChanged": { "a": 0 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 11, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 10, "statement": "# = #7 (=30 B angle)", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0 }, "parametersChanged": { "b": 20 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 12, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 11, "statement": "# = #8 (=45 C angle)", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20 }, "parametersChanged": { "c": 45 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 13, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 12, "statement": "# = #9 (=20 distance)", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45 }, "parametersChanged": { "dist": 20 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 14, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 14, "statement": "; quadrant I", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": false, "sourceLineKind": "comment", "result": { "status": "ok", "operation": "comment-quadrant-I", "sourceLineKind": "comment", "executed": false, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 15, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 15, "statement": "M429 ;Identity kinematics", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-identity", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "identity", "code": "M429" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 1, "notes": [] } }, { "stepIndex": 16, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 16, "statement": "g53 g0 x0y0 z# b0 c0 ;MACHINE coordinates", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-machine-reset", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 0, "motionType": "rapid", "feed": 2100, "startJoint": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": 0, "y": 0, "z": 10 }, "endTcp": { "x": 0, "y": 0, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 2, "notes": [] } }, { "stepIndex": 17, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 17, "statement": "g10l20p0 x0y0 z# b0 c0 ;new g54", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "offset", "result": { "status": "ok", "operation": "set-g54-offset", "sourceLineKind": "offset", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "workOffsetAfter": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "modalChange": { "coordinateSystem": "G54", "code": "G10 L20 P0" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 3, "notes": [] } }, { "stepIndex": 18, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 18, "statement": "g0 x+# y+# z# ;move to pattern center position", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-to-quadrant-center", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 1, "motionType": "rapid", "feed": 2100, "startJoint": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": 20, "y": 20, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": 0, "y": 0, "z": 10 }, "endTcp": { "x": 20, "y": 20, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 4, "notes": [] } }, { "stepIndex": 19, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "statement": "o call [#][#][#][#][#][#][#][#]", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "call", "result": { "status": "ok", "operation": "call-subroutine", "sourceLineKind": "call", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 5, "notes": [] } }, { "stepIndex": 20, "sourceFile": "helix_bc.ngc", "line": 1, "statement": "; helix using switchkins (xyzbc) b,c angles", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": false, "sourceLineKind": "comment", "result": { "status": "ok", "operation": "comment", "sourceLineKind": "comment", "executed": false, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 21, "sourceFile": "helix_bc.ngc", "line": 2, "statement": "osub", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": true, "sourceLineKind": "subroutine-boundary", "result": { "status": "ok", "operation": "subroutine-enter", "sourceLineKind": "subroutine-boundary", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 22, "sourceFile": "helix_bc.ngc", "line": 3, "statement": "# = #1 (=10)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "zmax": 10 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 23, "sourceFile": "helix_bc.ngc", "line": 4, "statement": "# = #2 (= 5)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "zmin": 5 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 24, "sourceFile": "helix_bc.ngc", "line": 5, "statement": "# = #3 (=10)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "r": 10 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 25, "sourceFile": "helix_bc.ngc", "line": 6, "statement": "# = #4 (=1000)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "frate": 1000 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 26, "sourceFile": "helix_bc.ngc", "line": 7, "statement": "# = #5 (=3)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "n": 3 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 27, "sourceFile": "helix_bc.ngc", "line": 8, "statement": "# = #6 (=0 NA)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "a": 0 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 28, "sourceFile": "helix_bc.ngc", "line": 9, "statement": "# = #7 (=45)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "b": 20 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 29, "sourceFile": "helix_bc.ngc", "line": 10, "statement": "# = #8 (=20)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "c": 45 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 30, "sourceFile": "helix_bc.ngc", "line": 12, "statement": "M429 ;Identity kinematics", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-identity", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "identity", "code": "M429" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 6, "notes": [] } }, { "stepIndex": 31, "sourceFile": "helix_bc.ngc", "line": 13, "statement": "g0 x[#<_x> - #] ;adjust for radius", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-radius-adjust", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 2, "motionType": "rapid", "feed": 2100, "startJoint": { "x": 20, "y": 20, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": 10, "y": 20, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": 20, "y": 20, "z": 10 }, "endTcp": { "x": 10, "y": 20, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 7, "notes": [] } }, { "stepIndex": 32, "sourceFile": "helix_bc.ngc", "line": 14, "statement": "g10l20p0 x0y0 z# b0 c0 ;new g54", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": true, "sourceLineKind": "offset", "result": { "status": "ok", "operation": "set-g54-offset", "sourceLineKind": "offset", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "workOffsetAfter": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "modalChange": { "coordinateSystem": "G54", "code": "G10 L20 P0" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 8, "notes": [] } }, { "stepIndex": 33, "sourceFile": "helix_bc.ngc", "line": 15, "statement": "M428 ;XYZBC", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-tcp-xyzbc", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "tcp-xyzbc", "code": "M428" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 9, "notes": [] } }, { "stepIndex": 34, "sourceFile": "helix_bc.ngc", "line": 16, "statement": "g0b#c# ;exercise b,c", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-bc-orient", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 3, "motionType": "rapid", "feed": 2100, "startJoint": { "x": 10, "y": 20, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": 10, "y": 20, "z": 10, "b": 20, "c": 45 }, "startTcp": { "x": 10, "y": 20, "z": 10 }, "endTcp": { "x": 10, "y": 20, "z": 10 }, "endToolAxis": { "i": 0.24184476264797528, "j": 0.24184476264797522, "k": 0.9396926207859084 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 10, "notes": [] } }, { "stepIndex": 35, "sourceFile": "helix_bc.ngc", "line": 17, "statement": "f# g2i#z# p# ;helix", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "feed-helix", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 4, "motionType": "arc", "feed": 1000, "startJoint": { "x": 10, "y": 20, "z": 10, "b": 20, "c": 45 }, "endJoint": { "x": 10, "y": 20, "z": 5, "b": 20, "c": 45 }, "startTcp": { "x": 10, "y": 20, "z": 10 }, "endTcp": { "x": 10, "y": 20, "z": 5 }, "endToolAxis": { "i": 0.24184476264797528, "j": 0.24184476264797522, "k": 0.9396926207859084 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 1000, "actualMmPerMin": 1000, "overridePercent": 100 }, "cutting": { "active": true, "cuttingSpeedMmPerMin": 1000 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 11, "notes": [] } }, { "stepIndex": 36, "sourceFile": "helix_bc.ngc", "line": 18, "statement": "M429 ;Identity kinematics", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-identity", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "identity", "code": "M429" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 1000, "actualMmPerMin": 1000, "overridePercent": 100 }, "cutting": { "active": true, "cuttingSpeedMmPerMin": 1000 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 1000, "actualMmPerMin": 1000, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 12, "notes": [] } }, { "stepIndex": 37, "sourceFile": "helix_bc.ngc", "line": 19, "statement": "g0 x0 y0 z# b0 c0 ;return to start", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-return-to-start", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 5, "motionType": "rapid", "feed": 2100, "startJoint": { "x": 10, "y": 20, "z": 5, "b": 20, "c": 45 }, "endJoint": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": 10, "y": 20, "z": 5 }, "endTcp": { "x": 0, "y": 0, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 1000, "actualMmPerMin": 1000, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 13, "notes": [] } }, { "stepIndex": 38, "sourceFile": "helix_bc.ngc", "line": 20, "statement": "g0 x[#<_x> + #] ;adjust restore", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-radius-restore", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 6, "motionType": "rapid", "feed": 2100, "startJoint": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": 10, "y": 0, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": 0, "y": 0, "z": 10 }, "endTcp": { "x": 10, "y": 0, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 14, "notes": [] } }, { "stepIndex": 39, "sourceFile": "helix_bc.ngc", "line": 21, "statement": "M428 ;XYZBC", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-tcp-xyzbc", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "tcp-xyzbc", "code": "M428" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 15, "notes": [] } }, { "stepIndex": 40, "sourceFile": "helix_bc.ngc", "line": 22, "statement": "oendsub", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": true, "sourceLineKind": "subroutine-boundary", "result": { "status": "ok", "operation": "subroutine-exit", "sourceLineKind": "subroutine-boundary", "executed": true, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 41, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 21, "statement": "; quadrant II", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": false, "sourceLineKind": "comment", "result": { "status": "ok", "operation": "comment-quadrant-II", "sourceLineKind": "comment", "executed": false, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 42, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 22, "statement": "M429 ;Identity kinematics", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-identity", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "identity", "code": "M429" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 16, "notes": [] } }, { "stepIndex": 43, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 23, "statement": "g53 g0 x0y0 z# b0 c0", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-machine-reset", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 7, "motionType": "rapid", "feed": 2100, "startJoint": { "x": 10, "y": 0, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": 10, "y": 0, "z": 10 }, "endTcp": { "x": 0, "y": 0, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 17, "notes": [] } }, { "stepIndex": 44, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 24, "statement": "g10l20p0 x0y0 z# b0 c0", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "offset", "result": { "status": "ok", "operation": "set-g54-offset", "sourceLineKind": "offset", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "workOffsetAfter": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "modalChange": { "coordinateSystem": "G54", "code": "G10 L20 P0" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 18, "notes": [] } }, { "stepIndex": 45, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 25, "statement": "g0 x-# y+# z#", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-to-quadrant-center", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 8, "motionType": "rapid", "feed": 2100, "startJoint": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": -20, "y": 20, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": 0, "y": 0, "z": 10 }, "endTcp": { "x": -20, "y": 20, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 19, "notes": [] } }, { "stepIndex": 46, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "statement": "o call [#][#][#][#][#][#][#][#]", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "call", "result": { "status": "ok", "operation": "call-subroutine", "sourceLineKind": "call", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 20, "notes": [] } }, { "stepIndex": 47, "sourceFile": "helix_bc.ngc", "line": 1, "statement": "; helix using switchkins (xyzbc) b,c angles", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": false, "sourceLineKind": "comment", "result": { "status": "ok", "operation": "comment", "sourceLineKind": "comment", "executed": false, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 48, "sourceFile": "helix_bc.ngc", "line": 2, "statement": "osub", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": true, "sourceLineKind": "subroutine-boundary", "result": { "status": "ok", "operation": "subroutine-enter", "sourceLineKind": "subroutine-boundary", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 49, "sourceFile": "helix_bc.ngc", "line": 3, "statement": "# = #1 (=10)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "zmax": 10 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 50, "sourceFile": "helix_bc.ngc", "line": 4, "statement": "# = #2 (= 5)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "zmin": 5 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 51, "sourceFile": "helix_bc.ngc", "line": 5, "statement": "# = #3 (=10)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "r": 10 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 52, "sourceFile": "helix_bc.ngc", "line": 6, "statement": "# = #4 (=1000)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "frate": 1000 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 53, "sourceFile": "helix_bc.ngc", "line": 7, "statement": "# = #5 (=3)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "n": 3 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 54, "sourceFile": "helix_bc.ngc", "line": 8, "statement": "# = #6 (=0 NA)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "a": 0 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 55, "sourceFile": "helix_bc.ngc", "line": 9, "statement": "# = #7 (=45)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "b": 20 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 56, "sourceFile": "helix_bc.ngc", "line": 10, "statement": "# = #8 (=20)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "c": 45 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 57, "sourceFile": "helix_bc.ngc", "line": 12, "statement": "M429 ;Identity kinematics", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-identity", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "identity", "code": "M429" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 21, "notes": [] } }, { "stepIndex": 58, "sourceFile": "helix_bc.ngc", "line": 13, "statement": "g0 x[#<_x> - #] ;adjust for radius", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-radius-adjust", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 9, "motionType": "rapid", "feed": 2100, "startJoint": { "x": -20, "y": 20, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": -30, "y": 20, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": -20, "y": 20, "z": 10 }, "endTcp": { "x": -30, "y": 20, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 22, "notes": [] } }, { "stepIndex": 59, "sourceFile": "helix_bc.ngc", "line": 14, "statement": "g10l20p0 x0y0 z# b0 c0 ;new g54", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": true, "sourceLineKind": "offset", "result": { "status": "ok", "operation": "set-g54-offset", "sourceLineKind": "offset", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "workOffsetAfter": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "modalChange": { "coordinateSystem": "G54", "code": "G10 L20 P0" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 23, "notes": [] } }, { "stepIndex": 60, "sourceFile": "helix_bc.ngc", "line": 15, "statement": "M428 ;XYZBC", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-tcp-xyzbc", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "tcp-xyzbc", "code": "M428" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 24, "notes": [] } }, { "stepIndex": 61, "sourceFile": "helix_bc.ngc", "line": 16, "statement": "g0b#c# ;exercise b,c", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-bc-orient", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 10, "motionType": "rapid", "feed": 2100, "startJoint": { "x": -30, "y": 20, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": -30, "y": 20, "z": 10, "b": 20, "c": 45 }, "startTcp": { "x": -30, "y": 20, "z": 10 }, "endTcp": { "x": -30, "y": 20, "z": 10 }, "endToolAxis": { "i": 0.24184476264797528, "j": 0.24184476264797522, "k": 0.9396926207859084 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 25, "notes": [] } }, { "stepIndex": 62, "sourceFile": "helix_bc.ngc", "line": 17, "statement": "f# g2i#z# p# ;helix", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "feed-helix", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 11, "motionType": "arc", "feed": 1000, "startJoint": { "x": -30, "y": 20, "z": 10, "b": 20, "c": 45 }, "endJoint": { "x": -30, "y": 20, "z": 5, "b": 20, "c": 45 }, "startTcp": { "x": -30, "y": 20, "z": 10 }, "endTcp": { "x": -30, "y": 20, "z": 5 }, "endToolAxis": { "i": 0.24184476264797528, "j": 0.24184476264797522, "k": 0.9396926207859084 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 1000, "actualMmPerMin": 1000, "overridePercent": 100 }, "cutting": { "active": true, "cuttingSpeedMmPerMin": 1000 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 26, "notes": [] } }, { "stepIndex": 63, "sourceFile": "helix_bc.ngc", "line": 18, "statement": "M429 ;Identity kinematics", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-identity", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "identity", "code": "M429" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 1000, "actualMmPerMin": 1000, "overridePercent": 100 }, "cutting": { "active": true, "cuttingSpeedMmPerMin": 1000 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 1000, "actualMmPerMin": 1000, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 27, "notes": [] } }, { "stepIndex": 64, "sourceFile": "helix_bc.ngc", "line": 19, "statement": "g0 x0 y0 z# b0 c0 ;return to start", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-return-to-start", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 12, "motionType": "rapid", "feed": 2100, "startJoint": { "x": -30, "y": 20, "z": 5, "b": 20, "c": 45 }, "endJoint": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": -30, "y": 20, "z": 5 }, "endTcp": { "x": 0, "y": 0, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 1000, "actualMmPerMin": 1000, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 28, "notes": [] } }, { "stepIndex": 65, "sourceFile": "helix_bc.ngc", "line": 20, "statement": "g0 x[#<_x> + #] ;adjust restore", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-radius-restore", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 13, "motionType": "rapid", "feed": 2100, "startJoint": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": 10, "y": 0, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": 0, "y": 0, "z": 10 }, "endTcp": { "x": 10, "y": 0, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 29, "notes": [] } }, { "stepIndex": 66, "sourceFile": "helix_bc.ngc", "line": 21, "statement": "M428 ;XYZBC", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-tcp-xyzbc", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "tcp-xyzbc", "code": "M428" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 30, "notes": [] } }, { "stepIndex": 67, "sourceFile": "helix_bc.ngc", "line": 22, "statement": "oendsub", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": true, "sourceLineKind": "subroutine-boundary", "result": { "status": "ok", "operation": "subroutine-exit", "sourceLineKind": "subroutine-boundary", "executed": true, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 68, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 28, "statement": "; quadrant III", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": false, "sourceLineKind": "comment", "result": { "status": "ok", "operation": "comment-quadrant-III", "sourceLineKind": "comment", "executed": false, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 69, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 29, "statement": "M429 ;Identity kinematics", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-identity", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "identity", "code": "M429" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 31, "notes": [] } }, { "stepIndex": 70, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 30, "statement": "g53 g0 x0y0 z# b0 c0", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-machine-reset", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 14, "motionType": "rapid", "feed": 2100, "startJoint": { "x": 10, "y": 0, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": 10, "y": 0, "z": 10 }, "endTcp": { "x": 0, "y": 0, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 32, "notes": [] } }, { "stepIndex": 71, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 31, "statement": "g10l20p0 x0y0 z# b0 c0", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "offset", "result": { "status": "ok", "operation": "set-g54-offset", "sourceLineKind": "offset", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "workOffsetAfter": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "modalChange": { "coordinateSystem": "G54", "code": "G10 L20 P0" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 33, "notes": [] } }, { "stepIndex": 72, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 32, "statement": "g0 x-# y-# z#", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-to-quadrant-center", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 15, "motionType": "rapid", "feed": 2100, "startJoint": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": -20, "y": -20, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": 0, "y": 0, "z": 10 }, "endTcp": { "x": -20, "y": -20, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 34, "notes": [] } }, { "stepIndex": 73, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "statement": "o call [#][#][#][#][#][#][#][#]", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "call", "result": { "status": "ok", "operation": "call-subroutine", "sourceLineKind": "call", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 35, "notes": [] } }, { "stepIndex": 74, "sourceFile": "helix_bc.ngc", "line": 1, "statement": "; helix using switchkins (xyzbc) b,c angles", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": false, "sourceLineKind": "comment", "result": { "status": "ok", "operation": "comment", "sourceLineKind": "comment", "executed": false, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 75, "sourceFile": "helix_bc.ngc", "line": 2, "statement": "osub", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": true, "sourceLineKind": "subroutine-boundary", "result": { "status": "ok", "operation": "subroutine-enter", "sourceLineKind": "subroutine-boundary", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 76, "sourceFile": "helix_bc.ngc", "line": 3, "statement": "# = #1 (=10)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "zmax": 10 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 77, "sourceFile": "helix_bc.ngc", "line": 4, "statement": "# = #2 (= 5)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "zmin": 5 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 78, "sourceFile": "helix_bc.ngc", "line": 5, "statement": "# = #3 (=10)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "r": 10 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 79, "sourceFile": "helix_bc.ngc", "line": 6, "statement": "# = #4 (=1000)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "frate": 1000 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 80, "sourceFile": "helix_bc.ngc", "line": 7, "statement": "# = #5 (=3)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "n": 3 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 81, "sourceFile": "helix_bc.ngc", "line": 8, "statement": "# = #6 (=0 NA)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "a": 0 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 82, "sourceFile": "helix_bc.ngc", "line": 9, "statement": "# = #7 (=45)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "b": 20 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 83, "sourceFile": "helix_bc.ngc", "line": 10, "statement": "# = #8 (=20)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "c": 45 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 84, "sourceFile": "helix_bc.ngc", "line": 12, "statement": "M429 ;Identity kinematics", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-identity", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "identity", "code": "M429" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 36, "notes": [] } }, { "stepIndex": 85, "sourceFile": "helix_bc.ngc", "line": 13, "statement": "g0 x[#<_x> - #] ;adjust for radius", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-radius-adjust", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 16, "motionType": "rapid", "feed": 2100, "startJoint": { "x": -20, "y": -20, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": -30, "y": -20, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": -20, "y": -20, "z": 10 }, "endTcp": { "x": -30, "y": -20, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 37, "notes": [] } }, { "stepIndex": 86, "sourceFile": "helix_bc.ngc", "line": 14, "statement": "g10l20p0 x0y0 z# b0 c0 ;new g54", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": true, "sourceLineKind": "offset", "result": { "status": "ok", "operation": "set-g54-offset", "sourceLineKind": "offset", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "workOffsetAfter": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "modalChange": { "coordinateSystem": "G54", "code": "G10 L20 P0" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 38, "notes": [] } }, { "stepIndex": 87, "sourceFile": "helix_bc.ngc", "line": 15, "statement": "M428 ;XYZBC", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-tcp-xyzbc", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "tcp-xyzbc", "code": "M428" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 39, "notes": [] } }, { "stepIndex": 88, "sourceFile": "helix_bc.ngc", "line": 16, "statement": "g0b#c# ;exercise b,c", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-bc-orient", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 17, "motionType": "rapid", "feed": 2100, "startJoint": { "x": -30, "y": -20, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": -30, "y": -20, "z": 10, "b": 20, "c": 45 }, "startTcp": { "x": -30, "y": -20, "z": 10 }, "endTcp": { "x": -30, "y": -20, "z": 10 }, "endToolAxis": { "i": 0.24184476264797528, "j": 0.24184476264797522, "k": 0.9396926207859084 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 40, "notes": [] } }, { "stepIndex": 89, "sourceFile": "helix_bc.ngc", "line": 17, "statement": "f# g2i#z# p# ;helix", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "feed-helix", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 18, "motionType": "arc", "feed": 1000, "startJoint": { "x": -30, "y": -20, "z": 10, "b": 20, "c": 45 }, "endJoint": { "x": -30, "y": -20, "z": 5, "b": 20, "c": 45 }, "startTcp": { "x": -30, "y": -20, "z": 10 }, "endTcp": { "x": -30, "y": -20, "z": 5 }, "endToolAxis": { "i": 0.24184476264797528, "j": 0.24184476264797522, "k": 0.9396926207859084 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 1000, "actualMmPerMin": 1000, "overridePercent": 100 }, "cutting": { "active": true, "cuttingSpeedMmPerMin": 1000 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 41, "notes": [] } }, { "stepIndex": 90, "sourceFile": "helix_bc.ngc", "line": 18, "statement": "M429 ;Identity kinematics", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-identity", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "identity", "code": "M429" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 1000, "actualMmPerMin": 1000, "overridePercent": 100 }, "cutting": { "active": true, "cuttingSpeedMmPerMin": 1000 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 1000, "actualMmPerMin": 1000, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 42, "notes": [] } }, { "stepIndex": 91, "sourceFile": "helix_bc.ngc", "line": 19, "statement": "g0 x0 y0 z# b0 c0 ;return to start", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-return-to-start", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 19, "motionType": "rapid", "feed": 2100, "startJoint": { "x": -30, "y": -20, "z": 5, "b": 20, "c": 45 }, "endJoint": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": -30, "y": -20, "z": 5 }, "endTcp": { "x": 0, "y": 0, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 1000, "actualMmPerMin": 1000, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 43, "notes": [] } }, { "stepIndex": 92, "sourceFile": "helix_bc.ngc", "line": 20, "statement": "g0 x[#<_x> + #] ;adjust restore", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-radius-restore", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 20, "motionType": "rapid", "feed": 2100, "startJoint": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": 10, "y": 0, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": 0, "y": 0, "z": 10 }, "endTcp": { "x": 10, "y": 0, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 44, "notes": [] } }, { "stepIndex": 93, "sourceFile": "helix_bc.ngc", "line": 21, "statement": "M428 ;XYZBC", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-tcp-xyzbc", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "tcp-xyzbc", "code": "M428" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 45, "notes": [] } }, { "stepIndex": 94, "sourceFile": "helix_bc.ngc", "line": 22, "statement": "oendsub", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": true, "sourceLineKind": "subroutine-boundary", "result": { "status": "ok", "operation": "subroutine-exit", "sourceLineKind": "subroutine-boundary", "executed": true, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 95, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 35, "statement": "; quadrant IV", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": false, "sourceLineKind": "comment", "result": { "status": "ok", "operation": "comment-quadrant-IV", "sourceLineKind": "comment", "executed": false, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 96, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 36, "statement": "M429 ;Identity kinematics", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-identity", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "identity", "code": "M429" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 46, "notes": [] } }, { "stepIndex": 97, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 37, "statement": "g53 g0 x0y0 z# b0 c0", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-machine-reset", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 21, "motionType": "rapid", "feed": 2100, "startJoint": { "x": 10, "y": 0, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": 10, "y": 0, "z": 10 }, "endTcp": { "x": 0, "y": 0, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 47, "notes": [] } }, { "stepIndex": 98, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 38, "statement": "g10l20p0 x0y0 z# b0 c0", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "offset", "result": { "status": "ok", "operation": "set-g54-offset", "sourceLineKind": "offset", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "workOffsetAfter": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "modalChange": { "coordinateSystem": "G54", "code": "G10 L20 P0" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 48, "notes": [] } }, { "stepIndex": 99, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 39, "statement": "g0 x+# y-# z#", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-to-quadrant-center", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 22, "motionType": "rapid", "feed": 2100, "startJoint": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": 20, "y": -20, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": 0, "y": 0, "z": 10 }, "endTcp": { "x": 20, "y": -20, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 49, "notes": [] } }, { "stepIndex": 100, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "statement": "o call [#][#][#][#][#][#][#][#]", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "call", "result": { "status": "ok", "operation": "call-subroutine", "sourceLineKind": "call", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 50, "notes": [] } }, { "stepIndex": 101, "sourceFile": "helix_bc.ngc", "line": 1, "statement": "; helix using switchkins (xyzbc) b,c angles", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": false, "sourceLineKind": "comment", "result": { "status": "ok", "operation": "comment", "sourceLineKind": "comment", "executed": false, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 102, "sourceFile": "helix_bc.ngc", "line": 2, "statement": "osub", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": true, "sourceLineKind": "subroutine-boundary", "result": { "status": "ok", "operation": "subroutine-enter", "sourceLineKind": "subroutine-boundary", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 103, "sourceFile": "helix_bc.ngc", "line": 3, "statement": "# = #1 (=10)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "zmax": 10 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 104, "sourceFile": "helix_bc.ngc", "line": 4, "statement": "# = #2 (= 5)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "zmin": 5 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 105, "sourceFile": "helix_bc.ngc", "line": 5, "statement": "# = #3 (=10)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "r": 10 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 106, "sourceFile": "helix_bc.ngc", "line": 6, "statement": "# = #4 (=1000)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "frate": 1000 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 107, "sourceFile": "helix_bc.ngc", "line": 7, "statement": "# = #5 (=3)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "n": 3 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 108, "sourceFile": "helix_bc.ngc", "line": 8, "statement": "# = #6 (=0 NA)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "a": 0 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 109, "sourceFile": "helix_bc.ngc", "line": 9, "statement": "# = #7 (=45)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "b": 20 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 110, "sourceFile": "helix_bc.ngc", "line": 10, "statement": "# = #8 (=20)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "c": 45 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 111, "sourceFile": "helix_bc.ngc", "line": 12, "statement": "M429 ;Identity kinematics", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-identity", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "identity", "code": "M429" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 51, "notes": [] } }, { "stepIndex": 112, "sourceFile": "helix_bc.ngc", "line": 13, "statement": "g0 x[#<_x> - #] ;adjust for radius", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-radius-adjust", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 23, "motionType": "rapid", "feed": 2100, "startJoint": { "x": 20, "y": -20, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": 10, "y": -20, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": 20, "y": -20, "z": 10 }, "endTcp": { "x": 10, "y": -20, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 52, "notes": [] } }, { "stepIndex": 113, "sourceFile": "helix_bc.ngc", "line": 14, "statement": "g10l20p0 x0y0 z# b0 c0 ;new g54", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": true, "sourceLineKind": "offset", "result": { "status": "ok", "operation": "set-g54-offset", "sourceLineKind": "offset", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "workOffsetAfter": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "modalChange": { "coordinateSystem": "G54", "code": "G10 L20 P0" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 53, "notes": [] } }, { "stepIndex": 114, "sourceFile": "helix_bc.ngc", "line": 15, "statement": "M428 ;XYZBC", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-tcp-xyzbc", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "tcp-xyzbc", "code": "M428" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 54, "notes": [] } }, { "stepIndex": 115, "sourceFile": "helix_bc.ngc", "line": 16, "statement": "g0b#c# ;exercise b,c", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-bc-orient", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 24, "motionType": "rapid", "feed": 2100, "startJoint": { "x": 10, "y": -20, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": 10, "y": -20, "z": 10, "b": 20, "c": 45 }, "startTcp": { "x": 10, "y": -20, "z": 10 }, "endTcp": { "x": 10, "y": -20, "z": 10 }, "endToolAxis": { "i": 0.24184476264797528, "j": 0.24184476264797522, "k": 0.9396926207859084 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 55, "notes": [] } }, { "stepIndex": 116, "sourceFile": "helix_bc.ngc", "line": 17, "statement": "f# g2i#z# p# ;helix", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "feed-helix", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 25, "motionType": "arc", "feed": 1000, "startJoint": { "x": 10, "y": -20, "z": 10, "b": 20, "c": 45 }, "endJoint": { "x": 10, "y": -20, "z": 5, "b": 20, "c": 45 }, "startTcp": { "x": 10, "y": -20, "z": 10 }, "endTcp": { "x": 10, "y": -20, "z": 5 }, "endToolAxis": { "i": 0.24184476264797528, "j": 0.24184476264797522, "k": 0.9396926207859084 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 1000, "actualMmPerMin": 1000, "overridePercent": 100 }, "cutting": { "active": true, "cuttingSpeedMmPerMin": 1000 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 56, "notes": [] } }, { "stepIndex": 117, "sourceFile": "helix_bc.ngc", "line": 18, "statement": "M429 ;Identity kinematics", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-identity", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "identity", "code": "M429" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 1000, "actualMmPerMin": 1000, "overridePercent": 100 }, "cutting": { "active": true, "cuttingSpeedMmPerMin": 1000 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 1000, "actualMmPerMin": 1000, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 57, "notes": [] } }, { "stepIndex": 118, "sourceFile": "helix_bc.ngc", "line": 19, "statement": "g0 x0 y0 z# b0 c0 ;return to start", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-return-to-start", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 26, "motionType": "rapid", "feed": 2100, "startJoint": { "x": 10, "y": -20, "z": 5, "b": 20, "c": 45 }, "endJoint": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": 10, "y": -20, "z": 5 }, "endTcp": { "x": 0, "y": 0, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 1000, "actualMmPerMin": 1000, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 58, "notes": [] } }, { "stepIndex": 119, "sourceFile": "helix_bc.ngc", "line": 20, "statement": "g0 x[#<_x> + #] ;adjust restore", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-radius-restore", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 27, "motionType": "rapid", "feed": 2100, "startJoint": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": 10, "y": 0, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": 0, "y": 0, "z": 10 }, "endTcp": { "x": 10, "y": 0, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 59, "notes": [] } }, { "stepIndex": 120, "sourceFile": "helix_bc.ngc", "line": 21, "statement": "M428 ;XYZBC", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-tcp-xyzbc", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "tcp-xyzbc", "code": "M428" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 60, "notes": [] } }, { "stepIndex": 121, "sourceFile": "helix_bc.ngc", "line": 22, "statement": "oendsub", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": true, "sourceLineKind": "subroutine-boundary", "result": { "status": "ok", "operation": "subroutine-exit", "sourceLineKind": "subroutine-boundary", "executed": true, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 122, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 42, "statement": ";final position", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": false, "sourceLineKind": "comment", "result": { "status": "ok", "operation": "comment-final-position", "sourceLineKind": "comment", "executed": false, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 123, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 43, "statement": "M429 ;Identity kinematics", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-identity", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "identity", "code": "M429" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 61, "notes": [] } }, { "stepIndex": 124, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 44, "statement": "g53 g0 x0y0 z# ;MACHINE coordinates", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-final-machine-reset", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 28, "motionType": "rapid", "feed": 2100, "startJoint": { "x": 10, "y": 0, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": 10, "y": 0, "z": 10 }, "endTcp": { "x": 0, "y": 0, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 62, "notes": [] } }, { "stepIndex": 125, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 45, "statement": "g10l20p0 x0y0 z# ;new g54", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "offset", "result": { "status": "ok", "operation": "set-g54-offset", "sourceLineKind": "offset", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "workOffsetAfter": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "modalChange": { "coordinateSystem": "G54", "code": "G10 L20 P0" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 63, "notes": [] } }, { "stepIndex": 126, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 47, "statement": "oendsub", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "subroutine-boundary", "result": { "status": "ok", "operation": "subroutine-exit", "sourceLineKind": "subroutine-boundary", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 127, "sourceFile": "xyzbc_switchkins.ngc", "line": 3, "statement": "m2", "callDepth": 0, "callStack": [], "executed": true, "sourceLineKind": "program-end", "result": { "status": "ok", "operation": "program-end", "sourceLineKind": "program-end", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "program": "ended", "code": "M2" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } } ], "summary": { "motionStepCount": 29, "switchkinsStepCount": 21, "parameterAssignmentStepCount": 41, "workOffsetStepCount": 9, "callStepCount": 5, "noMotionStepCount": 99, "finalJoint": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "finalKinematics": "identity" }, "semanticBoundary": "complete_gcode_execution_process_expanded_from_linuxcnc_xyzbc_trt_sources" }, "currentVelocity": 0, "operatorMessage": "task/HAL status tick 210", "pauseButton": { "action": "pause-resume", "paused": "true", "title": "Resume program", "ariaPressed": "true" }, "canvasDataset": { "width": 383, "height": 572, "threeToolAxis": "{\"x\":0,\"y\":0,\"z\":1}", "threeToolGlyphAxis": "{\"x\":0,\"y\":0,\"z\":1}" }, "canvasToolhead": { "x": 0.002, "y": 0, "z": 0.01 }, "canvasVismachPins": null, "programPaneDataset": { "region": "program", "liveSourceFile": "helix_bc.ngc", "liveSourceLine": "20", "liveSampleIndex": "313", "liveExecutedSamples": "314", "gcodeExecutionStatus": "ok", "gcodeExecutionStepCount": "128", "gcodeMotionStepCount": "29", "gcodeParameterStepCount": "41", "gcodeCallDepth": "2" }, "processMonitorDataset": { "linuxcncProcessMonitor": "", "sourceMode": "linuxcnc-task-motion-hal-wasm", "taskHalReady": "true", "activeLine": "20", "liveSourceFile": "helix_bc.ngc", "liveSourceLine": "20", "liveSampleIndex": "313" } }, "after": { "runState": "running", "taskState": "on", "powerOn": true, "estopActive": false, "allHomed": true, "mode": "auto", "interpState": "reading", "taskPaused": false, "motionPaused": false, "activeLine": 20, "sampleIndex": 314, "programExecutionSourceMode": "linuxcnc-task-motion-hal-wasm", "programUiExecution": { "apiName": "web-rtcp-5axis-ui-gcode-live-execution", "status": "running", "source": "programAxisPreviewPath.samples", "samplePeriodMs": 50, "sampleIndex": 314, "sampleCount": 1300, "executedSampleCount": 315, "timeMs": 15700, "activeProgram": "configs/sim/axis/vismach/5axis/table-rotary-tilting/demos/xyzbc_switchkins.ngc", "sourceFile": "helix_bc.ngc", "line": 20, "statement": "g0 x[#<_x> + #]", "operation": "rapid-radius-restore", "executionIndex": 14, "gcodeStepIndex": 38, "segmentIndex": 6, "motionType": "rapid", "activeKinematics": "identity", "joint": { "x": 3, "y": 0, "z": 10, "a": 0, "b": 0, "c": 0 }, "tcp": { "x": 3, "y": 0, "z": 10 }, "toolAxis": { "i": 0, "j": 0, "k": 1 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "machineState": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "semanticBoundary": "ui_updates_from_real_expanded_linuxcnc_gcode_sample_stream" }, "currentVelocity": 1999.998, "operatorMessage": "task/HAL status loop resumed" } }, { "label": "第二次继续执行 5 秒", "at": "2026-07-09T17:32:59.997Z", "durationMs": 6906, "state": { "runState": "running", "taskState": "on", "powerOn": true, "estopActive": false, "allHomed": true, "mode": "auto", "interpState": "reading", "taskPaused": false, "motionPaused": false, "activeLine": 17, "sampleIndex": 424, "programExecutionSourceMode": "linuxcnc-task-motion-hal-wasm", "programUiExecution": { "apiName": "web-rtcp-5axis-ui-gcode-live-execution", "status": "running", "source": "programAxisPreviewPath.samples", "samplePeriodMs": 50, "sampleIndex": 424, "sampleCount": 1300, "executedSampleCount": 425, "timeMs": 21200, "activeProgram": "configs/sim/axis/vismach/5axis/table-rotary-tilting/demos/xyzbc_switchkins.ngc", "sourceFile": "helix_bc.ngc", "line": 17, "statement": "f# g2i#z# p#", "operation": "feed-helix", "executionIndex": 26, "gcodeStepIndex": 62, "segmentIndex": 11, "motionType": "arc", "activeKinematics": "tcp-xyzbc", "joint": { "x": -13.2374, "y": 27.3592, "z": 8.94714, "a": 0, "b": 20, "c": 45 }, "tcp": { "x": -13.2374, "y": 27.3592, "z": 8.94714 }, "toolAxis": { "i": 0.24184476264797528, "j": 0.24184476264797522, "k": 0.9396926207859084 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "machineState": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 1000, "actualMmPerMin": 1000, "overridePercent": 100 }, "cutting": { "active": true, "cuttingSpeedMmPerMin": 1000 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "semanticBoundary": "ui_updates_from_real_expanded_linuxcnc_gcode_sample_stream" }, "currentVelocity": 996.516, "operatorMessage": "task/HAL status tick 110" }, "frozenPosition": null, "movedDuringHold": true } ], "assertions": [ { "label": "WebGL/canvas preview rendered", "passed": true, "checkedAt": "2026-07-09T17:32:10.216Z", "result": { "ok": true, "width": 383, "height": 572, "dataUrlLength": 48954 } }, { "label": "解除 ESTOP", "passed": true, "checkedAt": "2026-07-09T17:32:12.323Z", "state": { "runState": "stopped", "taskState": "estop-reset", "powerOn": false, "estopActive": false, "allHomed": false, "mode": "manual", "interpState": "idle", "taskPaused": false, "motionPaused": false, "activeLine": 16, "sampleIndex": 0, "programExecutionSourceMode": "linuxcnc-task-motion-hal-wasm", "programUiExecution": { "apiName": "web-rtcp-5axis-ui-gcode-live-execution", "status": "idle", "source": "programAxisPreviewPath.samples", "samplePeriodMs": 50, "sampleIndex": 0, "sampleCount": 1300, "executedSampleCount": 1, "timeMs": 0, "activeProgram": "configs/sim/axis/vismach/5axis/table-rotary-tilting/demos/xyzbc_switchkins.ngc", "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 16, "statement": "g53 g0 x0y0 z# b0 c0 ; quadrant I", "operation": "rapid-machine-reset", "executionIndex": 2, "gcodeStepIndex": 16, "segmentIndex": 0, "motionType": "rapid", "activeKinematics": "identity", "joint": { "x": 0, "y": 0, "z": 0, "a": 0, "b": 0, "c": 0 }, "tcp": { "x": 0, "y": 0, "z": 10 }, "toolAxis": { "i": 0, "j": 0, "k": 1 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "machineState": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "semanticBoundary": "ui_updates_from_real_expanded_linuxcnc_gcode_sample_stream" }, "currentVelocity": 0, "operatorMessage": "task/HAL estop reset; machine off" } }, { "label": "上电", "passed": true, "checkedAt": "2026-07-09T17:32:13.094Z", "state": { "runState": "idle", "taskState": "on", "powerOn": true, "estopActive": false, "allHomed": false, "mode": "manual", "interpState": "idle", "taskPaused": false, "motionPaused": false, "activeLine": 16, "sampleIndex": 0, "programExecutionSourceMode": "linuxcnc-task-motion-hal-wasm", "programUiExecution": { "apiName": "web-rtcp-5axis-ui-gcode-live-execution", "status": "idle", "source": "programAxisPreviewPath.samples", "samplePeriodMs": 50, "sampleIndex": 0, "sampleCount": 1300, "executedSampleCount": 1, "timeMs": 0, "activeProgram": "configs/sim/axis/vismach/5axis/table-rotary-tilting/demos/xyzbc_switchkins.ngc", "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 16, "statement": "g53 g0 x0y0 z# b0 c0 ; quadrant I", "operation": "rapid-machine-reset", "executionIndex": 2, "gcodeStepIndex": 16, "segmentIndex": 0, "motionType": "rapid", "activeKinematics": "identity", "joint": { "x": 0, "y": 0, "z": 0, "a": 0, "b": 0, "c": 0 }, "tcp": { "x": 0, "y": 0, "z": 10 }, "toolAxis": { "i": 0, "j": 0, "k": 1 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "machineState": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "semanticBoundary": "ui_updates_from_real_expanded_linuxcnc_gcode_sample_stream" }, "currentVelocity": 0, "operatorMessage": "task/HAL machine power on" } }, { "label": "Home All", "passed": true, "checkedAt": "2026-07-09T17:32:13.825Z", "state": { "runState": "idle", "taskState": "on", "powerOn": true, "estopActive": false, "allHomed": true, "mode": "manual", "interpState": "idle", "taskPaused": false, "motionPaused": false, "activeLine": 16, "sampleIndex": 0, "programExecutionSourceMode": "linuxcnc-task-motion-hal-wasm", "programUiExecution": { "apiName": "web-rtcp-5axis-ui-gcode-live-execution", "status": "idle", "source": "programAxisPreviewPath.samples", "samplePeriodMs": 50, "sampleIndex": 0, "sampleCount": 1300, "executedSampleCount": 1, "timeMs": 0, "activeProgram": "configs/sim/axis/vismach/5axis/table-rotary-tilting/demos/xyzbc_switchkins.ngc", "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 16, "statement": "g53 g0 x0y0 z# b0 c0 ; quadrant I", "operation": "rapid-machine-reset", "executionIndex": 2, "gcodeStepIndex": 16, "segmentIndex": 0, "motionType": "rapid", "activeKinematics": "identity", "joint": { "x": 0, "y": 0, "z": 10, "a": 0, "b": 0, "c": 0 }, "tcp": { "x": 0, "y": 0, "z": 10 }, "toolAxis": { "i": 0, "j": 0, "k": 1 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "machineState": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "semanticBoundary": "ui_updates_from_real_expanded_linuxcnc_gcode_sample_stream" }, "currentVelocity": 0, "operatorMessage": "task/HAL machine homed" } }, { "label": "自动模式", "passed": true, "checkedAt": "2026-07-09T17:32:14.618Z", "state": { "runState": "idle", "taskState": "on", "powerOn": true, "estopActive": false, "allHomed": true, "mode": "auto", "interpState": "idle", "taskPaused": false, "motionPaused": false, "activeLine": 16, "sampleIndex": 0, "programExecutionSourceMode": "linuxcnc-task-motion-hal-wasm", "programUiExecution": { "apiName": "web-rtcp-5axis-ui-gcode-live-execution", "status": "idle", "source": "programAxisPreviewPath.samples", "samplePeriodMs": 50, "sampleIndex": 0, "sampleCount": 1300, "executedSampleCount": 1, "timeMs": 0, "activeProgram": "configs/sim/axis/vismach/5axis/table-rotary-tilting/demos/xyzbc_switchkins.ngc", "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 16, "statement": "g53 g0 x0y0 z# b0 c0 ; quadrant I", "operation": "rapid-machine-reset", "executionIndex": 2, "gcodeStepIndex": 16, "segmentIndex": 0, "motionType": "rapid", "activeKinematics": "identity", "joint": { "x": 0, "y": 0, "z": 0, "a": 0, "b": 0, "c": 0 }, "tcp": { "x": 0, "y": 0, "z": 10 }, "toolAxis": { "i": 0, "j": 0, "k": 1 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "machineState": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "semanticBoundary": "ui_updates_from_real_expanded_linuxcnc_gcode_sample_stream" }, "currentVelocity": 0, "operatorMessage": "task/HAL mode auto" } }, { "label": "Run", "passed": true, "checkedAt": "2026-07-09T17:32:17.699Z", "state": { "runState": "running", "taskState": "on", "powerOn": true, "estopActive": false, "allHomed": true, "mode": "auto", "interpState": "reading", "taskPaused": false, "motionPaused": false, "activeLine": 18, "sampleIndex": 1, "programExecutionSourceMode": "linuxcnc-task-motion-hal-wasm", "programUiExecution": { "apiName": "web-rtcp-5axis-ui-gcode-live-execution", "status": "idle", "source": "programAxisPreviewPath.samples", "samplePeriodMs": 50, "sampleIndex": 1, "sampleCount": 1300, "executedSampleCount": 2, "timeMs": 50, "activeProgram": "configs/sim/axis/vismach/5axis/table-rotary-tilting/demos/xyzbc_switchkins.ngc", "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 18, "statement": "g0 x+20 y+20 z#", "operation": "rapid-to-quadrant-center", "executionIndex": 4, "gcodeStepIndex": 18, "segmentIndex": 1, "motionType": "rapid", "activeKinematics": "identity", "joint": { "x": 0, "y": 0, "z": 10, "a": 0, "b": 0, "c": 0 }, "tcp": { "x": 0, "y": 0, "z": 10 }, "toolAxis": { "i": 0, "j": 0, "k": 1 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "machineState": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "semanticBoundary": "ui_updates_from_real_expanded_linuxcnc_gcode_sample_stream" }, "currentVelocity": 1996.5359999999998, "operatorMessage": "task/HAL status loop running xyzbc-trt xyzbc-trt" } }, { "label": "Run 后执行 5 秒", "passed": true, "checkedAt": "2026-07-09T17:32:23.410Z", "state": { "runState": "running", "taskState": "on", "powerOn": true, "estopActive": false, "allHomed": true, "mode": "auto", "interpState": "reading", "taskPaused": false, "motionPaused": false, "activeLine": 17, "sampleIndex": 100, "programExecutionSourceMode": "linuxcnc-task-motion-hal-wasm", "programUiExecution": { "apiName": "web-rtcp-5axis-ui-gcode-live-execution", "status": "running", "source": "programAxisPreviewPath.samples", "samplePeriodMs": 50, "sampleIndex": 100, "sampleCount": 1300, "executedSampleCount": 101, "timeMs": 5000, "activeProgram": "configs/sim/axis/vismach/5axis/table-rotary-tilting/demos/xyzbc_switchkins.ngc", "sourceFile": "helix_bc.ngc", "line": 17, "statement": "f# g2i#z# p#", "operation": "feed-helix", "executionIndex": 11, "gcodeStepIndex": 35, "segmentIndex": 4, "motionType": "arc", "activeKinematics": "tcp-xyzbc", "joint": { "x": 27.2402, "y": 26.8978, "z": 8.96476, "a": 0, "b": 20, "c": 45 }, "tcp": { "x": 27.2402, "y": 26.8978, "z": 8.96476 }, "toolAxis": { "i": 0.24184476264797528, "j": 0.24184476264797522, "k": 0.9396926207859084 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "machineState": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 1000, "actualMmPerMin": 1000, "overridePercent": 100 }, "cutting": { "active": true, "cuttingSpeedMmPerMin": 1000 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "semanticBoundary": "ui_updates_from_real_expanded_linuxcnc_gcode_sample_stream" }, "currentVelocity": 996.516, "operatorMessage": "task/HAL status tick 99" } }, { "label": "第一次暂停", "passed": true, "checkedAt": "2026-07-09T17:32:26.167Z", "state": { "runState": "paused", "taskState": "on", "powerOn": true, "estopActive": false, "allHomed": true, "mode": "auto", "interpState": "paused", "taskPaused": true, "motionPaused": true, "activeLine": 17, "sampleIndex": 152, "programExecutionSourceMode": "linuxcnc-task-motion-hal-wasm", "programUiExecution": { "apiName": "web-rtcp-5axis-ui-gcode-live-execution", "status": "paused", "source": "programAxisPreviewPath.samples", "samplePeriodMs": 50, "sampleIndex": 152, "sampleCount": 1300, "executedSampleCount": 153, "timeMs": 7600, "activeProgram": "configs/sim/axis/vismach/5axis/table-rotary-tilting/demos/xyzbc_switchkins.ngc", "sourceFile": "helix_bc.ngc", "line": 17, "statement": "f# g2i#z# p#", "operation": "feed-helix", "executionIndex": 11, "gcodeStepIndex": 35, "segmentIndex": 4, "motionType": "arc", "activeKinematics": "tcp-xyzbc", "joint": { "x": 23.5858, "y": 10.665, "z": 7.81938, "a": 0, "b": 20, "c": 45 }, "tcp": { "x": 3.2662448870797647, "y": -9.654555112920232, "z": -71.13265430581124 }, "toolAxis": { "i": 0.24184476264797528, "j": 0.24184476264797522, "k": 0.9396926207859084 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "machineState": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 1000, "actualMmPerMin": 1000, "overridePercent": 100 }, "cutting": { "active": true, "cuttingSpeedMmPerMin": 1000 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "semanticBoundary": "ui_updates_from_real_expanded_linuxcnc_gcode_sample_stream" }, "currentVelocity": 0, "operatorMessage": "task/HAL paused status monitor running" } }, { "label": "第一次暂停保持 5 秒", "passed": true, "checkedAt": "2026-07-09T17:32:31.665Z", "state": { "runState": "paused", "taskState": "on", "powerOn": true, "estopActive": false, "allHomed": true, "mode": "auto", "interpState": "paused", "taskPaused": true, "motionPaused": true, "activeLine": 17, "sampleIndex": 152, "programExecutionSourceMode": "linuxcnc-task-motion-hal-wasm", "programUiExecution": { "apiName": "web-rtcp-5axis-ui-gcode-live-execution", "status": "paused", "source": "programAxisPreviewPath.samples", "samplePeriodMs": 50, "sampleIndex": 152, "sampleCount": 1300, "executedSampleCount": 153, "timeMs": 7600, "activeProgram": "configs/sim/axis/vismach/5axis/table-rotary-tilting/demos/xyzbc_switchkins.ngc", "sourceFile": "helix_bc.ngc", "line": 17, "statement": "f# g2i#z# p#", "operation": "feed-helix", "executionIndex": 11, "gcodeStepIndex": 35, "segmentIndex": 4, "motionType": "arc", "activeKinematics": "tcp-xyzbc", "joint": { "x": 23.5858, "y": 10.665, "z": 7.81938, "a": 0, "b": 20, "c": 45 }, "tcp": { "x": 3.2662448870797647, "y": -9.654555112920232, "z": -71.13265430581124 }, "toolAxis": { "i": 0.24184476264797528, "j": 0.24184476264797522, "k": 0.9396926207859084 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "machineState": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 1000, "actualMmPerMin": 1000, "overridePercent": 100 }, "cutting": { "active": true, "cuttingSpeedMmPerMin": 1000 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "semanticBoundary": "ui_updates_from_real_expanded_linuxcnc_gcode_sample_stream" }, "currentVelocity": 0, "operatorMessage": "task/HAL status tick 121" } }, { "label": "第一次继续执行", "passed": true, "checkedAt": "2026-07-09T17:32:34.544Z", "state": { "runState": "running", "taskState": "on", "powerOn": true, "estopActive": false, "allHomed": true, "mode": "auto", "interpState": "reading", "taskPaused": false, "motionPaused": false, "activeLine": 17, "sampleIndex": 152, "programExecutionSourceMode": "linuxcnc-task-motion-hal-wasm", "programUiExecution": { "apiName": "web-rtcp-5axis-ui-gcode-live-execution", "status": "running", "source": "programAxisPreviewPath.samples", "samplePeriodMs": 50, "sampleIndex": 152, "sampleCount": 1300, "executedSampleCount": 153, "timeMs": 7600, "activeProgram": "configs/sim/axis/vismach/5axis/table-rotary-tilting/demos/xyzbc_switchkins.ngc", "sourceFile": "helix_bc.ngc", "line": 17, "statement": "f# g2i#z# p#", "operation": "feed-helix", "executionIndex": 11, "gcodeStepIndex": 35, "segmentIndex": 4, "motionType": "arc", "activeKinematics": "tcp-xyzbc", "joint": { "x": 23.8906, "y": 10.7969, "z": 7.81057, "a": 0, "b": 20, "c": 45 }, "tcp": { "x": 23.8906, "y": 10.7969, "z": 7.81057 }, "toolAxis": { "i": 0.24184476264797528, "j": 0.24184476264797522, "k": 0.9396926207859084 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "machineState": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 1000, "actualMmPerMin": 1000, "overridePercent": 100 }, "cutting": { "active": true, "cuttingSpeedMmPerMin": 1000 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "semanticBoundary": "ui_updates_from_real_expanded_linuxcnc_gcode_sample_stream" }, "currentVelocity": 996.516, "operatorMessage": "task/HAL status tick 184" } }, { "label": "第一次继续执行 5 秒", "passed": true, "checkedAt": "2026-07-09T17:32:40.444Z", "state": { "runState": "running", "taskState": "on", "powerOn": true, "estopActive": false, "allHomed": true, "mode": "auto", "interpState": "reading", "taskPaused": false, "motionPaused": false, "activeLine": 17, "sampleIndex": 256, "programExecutionSourceMode": "linuxcnc-task-motion-hal-wasm", "programUiExecution": { "apiName": "web-rtcp-5axis-ui-gcode-live-execution", "status": "running", "source": "programAxisPreviewPath.samples", "samplePeriodMs": 50, "sampleIndex": 256, "sampleCount": 1300, "executedSampleCount": 257, "timeMs": 12800, "activeProgram": "configs/sim/axis/vismach/5axis/table-rotary-tilting/demos/xyzbc_switchkins.ngc", "sourceFile": "helix_bc.ngc", "line": 17, "statement": "f# g2i#z# p#", "operation": "feed-helix", "executionIndex": 11, "gcodeStepIndex": 35, "segmentIndex": 4, "motionType": "arc", "activeKinematics": "tcp-xyzbc", "joint": { "x": 23.7886, "y": 29.2456, "z": 5.51982, "a": 0, "b": 20, "c": 45 }, "tcp": { "x": 23.7886, "y": 29.2456, "z": 5.51982 }, "toolAxis": { "i": 0.24184476264797528, "j": 0.24184476264797522, "k": 0.9396926207859084 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "machineState": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 1000, "actualMmPerMin": 1000, "overridePercent": 100 }, "cutting": { "active": true, "cuttingSpeedMmPerMin": 1000 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "semanticBoundary": "ui_updates_from_real_expanded_linuxcnc_gcode_sample_stream" }, "currentVelocity": 996.516, "operatorMessage": "task/HAL status tick 104" } }, { "label": "第二次暂停", "passed": true, "checkedAt": "2026-07-09T17:32:43.570Z", "state": { "runState": "paused", "taskState": "on", "powerOn": true, "estopActive": false, "allHomed": true, "mode": "auto", "interpState": "paused", "taskPaused": true, "motionPaused": true, "activeLine": 20, "sampleIndex": 313, "programExecutionSourceMode": "linuxcnc-task-motion-hal-wasm", "programUiExecution": { "apiName": "web-rtcp-5axis-ui-gcode-live-execution", "status": "paused", "source": "programAxisPreviewPath.samples", "samplePeriodMs": 50, "sampleIndex": 313, "sampleCount": 1300, "executedSampleCount": 314, "timeMs": 15650, "activeProgram": "configs/sim/axis/vismach/5axis/table-rotary-tilting/demos/xyzbc_switchkins.ngc", "sourceFile": "helix_bc.ngc", "line": 20, "statement": "g0 x[#<_x> + #]", "operation": "rapid-radius-restore", "executionIndex": 14, "gcodeStepIndex": 38, "segmentIndex": 6, "motionType": "rapid", "activeKinematics": "identity", "joint": { "x": 2.33333, "y": 0, "z": 10, "a": 0, "b": 0, "c": 0 }, "tcp": { "x": 2.33333, "y": 0, "z": 10 }, "toolAxis": { "i": 0, "j": 0, "k": 1 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "machineState": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "semanticBoundary": "ui_updates_from_real_expanded_linuxcnc_gcode_sample_stream" }, "currentVelocity": 0, "operatorMessage": "task/HAL paused status monitor running" } }, { "label": "第二次暂停保持 5 秒", "passed": true, "checkedAt": "2026-07-09T17:32:49.968Z", "state": { "runState": "paused", "taskState": "on", "powerOn": true, "estopActive": false, "allHomed": true, "mode": "auto", "interpState": "paused", "taskPaused": true, "motionPaused": true, "activeLine": 20, "sampleIndex": 313, "programExecutionSourceMode": "linuxcnc-task-motion-hal-wasm", "programUiExecution": { "apiName": "web-rtcp-5axis-ui-gcode-live-execution", "status": "paused", "source": "programAxisPreviewPath.samples", "samplePeriodMs": 50, "sampleIndex": 313, "sampleCount": 1300, "executedSampleCount": 314, "timeMs": 15650, "activeProgram": "configs/sim/axis/vismach/5axis/table-rotary-tilting/demos/xyzbc_switchkins.ngc", "sourceFile": "helix_bc.ngc", "line": 20, "statement": "g0 x[#<_x> + #]", "operation": "rapid-radius-restore", "executionIndex": 14, "gcodeStepIndex": 38, "segmentIndex": 6, "motionType": "rapid", "activeKinematics": "identity", "joint": { "x": 2.33333, "y": 0, "z": 10, "a": 0, "b": 0, "c": 0 }, "tcp": { "x": 2.33333, "y": 0, "z": 10 }, "toolAxis": { "i": 0, "j": 0, "k": 1 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "machineState": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "semanticBoundary": "ui_updates_from_real_expanded_linuxcnc_gcode_sample_stream" }, "currentVelocity": 0, "operatorMessage": "task/HAL status tick 139" } }, { "label": "第二次继续执行", "passed": true, "checkedAt": "2026-07-09T17:32:53.091Z", "state": { "runState": "running", "taskState": "on", "powerOn": true, "estopActive": false, "allHomed": true, "mode": "auto", "interpState": "reading", "taskPaused": false, "motionPaused": false, "activeLine": 20, "sampleIndex": 314, "programExecutionSourceMode": "linuxcnc-task-motion-hal-wasm", "programUiExecution": { "apiName": "web-rtcp-5axis-ui-gcode-live-execution", "status": "running", "source": "programAxisPreviewPath.samples", "samplePeriodMs": 50, "sampleIndex": 314, "sampleCount": 1300, "executedSampleCount": 315, "timeMs": 15700, "activeProgram": "configs/sim/axis/vismach/5axis/table-rotary-tilting/demos/xyzbc_switchkins.ngc", "sourceFile": "helix_bc.ngc", "line": 20, "statement": "g0 x[#<_x> + #]", "operation": "rapid-radius-restore", "executionIndex": 14, "gcodeStepIndex": 38, "segmentIndex": 6, "motionType": "rapid", "activeKinematics": "identity", "joint": { "x": 3, "y": 0, "z": 10, "a": 0, "b": 0, "c": 0 }, "tcp": { "x": 3, "y": 0, "z": 10 }, "toolAxis": { "i": 0, "j": 0, "k": 1 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "machineState": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "semanticBoundary": "ui_updates_from_real_expanded_linuxcnc_gcode_sample_stream" }, "currentVelocity": 1999.998, "operatorMessage": "task/HAL status loop resumed" } }, { "label": "第二次继续执行 5 秒", "passed": true, "checkedAt": "2026-07-09T17:32:59.997Z", "state": { "runState": "running", "taskState": "on", "powerOn": true, "estopActive": false, "allHomed": true, "mode": "auto", "interpState": "reading", "taskPaused": false, "motionPaused": false, "activeLine": 17, "sampleIndex": 424, "programExecutionSourceMode": "linuxcnc-task-motion-hal-wasm", "programUiExecution": { "apiName": "web-rtcp-5axis-ui-gcode-live-execution", "status": "running", "source": "programAxisPreviewPath.samples", "samplePeriodMs": 50, "sampleIndex": 424, "sampleCount": 1300, "executedSampleCount": 425, "timeMs": 21200, "activeProgram": "configs/sim/axis/vismach/5axis/table-rotary-tilting/demos/xyzbc_switchkins.ngc", "sourceFile": "helix_bc.ngc", "line": 17, "statement": "f# g2i#z# p#", "operation": "feed-helix", "executionIndex": 26, "gcodeStepIndex": 62, "segmentIndex": 11, "motionType": "arc", "activeKinematics": "tcp-xyzbc", "joint": { "x": -13.2374, "y": 27.3592, "z": 8.94714, "a": 0, "b": 20, "c": 45 }, "tcp": { "x": -13.2374, "y": 27.3592, "z": 8.94714 }, "toolAxis": { "i": 0.24184476264797528, "j": 0.24184476264797522, "k": 0.9396926207859084 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "machineState": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 1000, "actualMmPerMin": 1000, "overridePercent": 100 }, "cutting": { "active": true, "cuttingSpeedMmPerMin": 1000 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "semanticBoundary": "ui_updates_from_real_expanded_linuxcnc_gcode_sample_stream" }, "currentVelocity": 996.516, "operatorMessage": "task/HAL status tick 110" } } ], "capturedFrameCount": 18, "firstFrame": { "index": 0, "elapsedMs": 55, "file": "frame-00000-t000055ms-stopped.png", "runState": "stopped", "taskState": "estop", "mode": "manual", "interpState": "idle", "taskPaused": false, "motionPaused": false, "activeLine": 16, "sampleIndex": 0, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 16, "statement": "g53 g0 x0y0 z# b0 c0 ; quadrant I", "currentVelocity": 0 }, "lastFrame": { "index": 17, "elapsedMs": 48427, "file": "frame-00017-t048427ms-running.png", "runState": "running", "taskState": "on", "mode": "auto", "interpState": "reading", "taskPaused": false, "motionPaused": false, "activeLine": 17, "sampleIndex": 479, "sourceFile": "helix_bc.ngc", "line": 17, "statement": "f# g2i#z# p#", "currentVelocity": 996.516 }, "frames": [ { "index": 0, "elapsedMs": 55, "file": "frame-00000-t000055ms-stopped.png", "runState": "stopped", "taskState": "estop", "mode": "manual", "interpState": "idle", "taskPaused": false, "motionPaused": false, "activeLine": 16, "sampleIndex": 0, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 16, "statement": "g53 g0 x0y0 z# b0 c0 ; quadrant I", "currentVelocity": 0 }, { "index": 1, "elapsedMs": 228, "file": "frame-00001-t000228ms-idle.png", "runState": "idle", "taskState": "estop-reset", "mode": "manual", "interpState": "idle", "taskPaused": false, "motionPaused": false, "activeLine": 16, "sampleIndex": 0, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 16, "statement": "g53 g0 x0y0 z# b0 c0 ; quadrant I", "currentVelocity": 0 }, { "index": 2, "elapsedMs": 975, "file": "frame-00002-t000975ms-stopped.png", "runState": "stopped", "taskState": "estop-reset", "mode": "manual", "interpState": "idle", "taskPaused": false, "motionPaused": false, "activeLine": 16, "sampleIndex": 0, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 16, "statement": "g53 g0 x0y0 z# b0 c0 ; quadrant I", "currentVelocity": 0 }, { "index": 3, "elapsedMs": 1745, "file": "frame-00003-t001745ms-idle.png", "runState": "idle", "taskState": "on", "mode": "manual", "interpState": "idle", "taskPaused": false, "motionPaused": false, "activeLine": 16, "sampleIndex": 0, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 16, "statement": "g53 g0 x0y0 z# b0 c0 ; quadrant I", "currentVelocity": 0 }, { "index": 4, "elapsedMs": 2486, "file": "frame-00004-t002486ms-idle.png", "runState": "idle", "taskState": "on", "mode": "manual", "interpState": "idle", "taskPaused": false, "motionPaused": false, "activeLine": 16, "sampleIndex": 0, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 16, "statement": "g53 g0 x0y0 z# b0 c0 ; quadrant I", "currentVelocity": 0 }, { "index": 5, "elapsedMs": 3220, "file": "frame-00005-t003220ms-idle.png", "runState": "idle", "taskState": "on", "mode": "auto", "interpState": "idle", "taskPaused": false, "motionPaused": false, "activeLine": 16, "sampleIndex": 0, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 16, "statement": "g53 g0 x0y0 z# b0 c0 ; quadrant I", "currentVelocity": 0 }, { "index": 6, "elapsedMs": 3460, "file": "frame-00006-t003460ms-idle.png", "runState": "idle", "taskState": "on", "mode": "auto", "interpState": "idle", "taskPaused": false, "motionPaused": false, "activeLine": 16, "sampleIndex": 0, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 16, "statement": "g53 g0 x0y0 z# b0 c0 ; quadrant I", "currentVelocity": 30 }, { "index": 7, "elapsedMs": 6320, "file": "frame-00007-t006320ms-running.png", "runState": "running", "taskState": "on", "mode": "auto", "interpState": "reading", "taskPaused": false, "motionPaused": false, "activeLine": 16, "sampleIndex": 48, "sourceFile": "helix_bc.ngc", "line": 16, "statement": "g0b#c#", "currentVelocity": 203.7696 }, { "index": 8, "elapsedMs": 9175, "file": "frame-00008-t009175ms-running.png", "runState": "running", "taskState": "on", "mode": "auto", "interpState": "reading", "taskPaused": false, "motionPaused": false, "activeLine": 17, "sampleIndex": 100, "sourceFile": "helix_bc.ngc", "line": 17, "statement": "f# g2i#z# p#", "currentVelocity": 996.516 }, { "index": 9, "elapsedMs": 12138, "file": "frame-00009-t012138ms-paused.png", "runState": "paused", "taskState": "on", "mode": "auto", "interpState": "paused", "taskPaused": true, "motionPaused": true, "activeLine": 17, "sampleIndex": 152, "sourceFile": "helix_bc.ngc", "line": 17, "statement": "f# g2i#z# p#", "currentVelocity": 0 }, { "index": 10, "elapsedMs": 17438, "file": "frame-00010-t017438ms-paused.png", "runState": "paused", "taskState": "on", "mode": "auto", "interpState": "paused", "taskPaused": true, "motionPaused": true, "activeLine": 17, "sampleIndex": 152, "sourceFile": "helix_bc.ngc", "line": 17, "statement": "f# g2i#z# p#", "currentVelocity": 0 }, { "index": 11, "elapsedMs": 20237, "file": "frame-00011-t020237ms-paused.png", "runState": "paused", "taskState": "on", "mode": "auto", "interpState": "paused", "taskPaused": true, "motionPaused": true, "activeLine": 17, "sampleIndex": 152, "sourceFile": "helix_bc.ngc", "line": 17, "statement": "f# g2i#z# p#", "currentVelocity": 0 }, { "index": 12, "elapsedMs": 25914, "file": "frame-00012-t025914ms-running.png", "runState": "running", "taskState": "on", "mode": "auto", "interpState": "reading", "taskPaused": false, "motionPaused": false, "activeLine": 17, "sampleIndex": 253, "sourceFile": "helix_bc.ngc", "line": 17, "statement": "f# g2i#z# p#", "currentVelocity": 996.516 }, { "index": 13, "elapsedMs": 29065, "file": "frame-00013-t029065ms-running.png", "runState": "running", "taskState": "on", "mode": "auto", "interpState": "reading", "taskPaused": false, "motionPaused": false, "activeLine": 20, "sampleIndex": 313, "sourceFile": "helix_bc.ngc", "line": 20, "statement": "g0 x[#<_x> + #]", "currentVelocity": 1999.998 }, { "index": 14, "elapsedMs": 35225, "file": "frame-00014-t035225ms-paused.png", "runState": "paused", "taskState": "on", "mode": "auto", "interpState": "paused", "taskPaused": true, "motionPaused": true, "activeLine": 20, "sampleIndex": 313, "sourceFile": "helix_bc.ngc", "line": 20, "statement": "g0 x[#<_x> + #]", "currentVelocity": 0 }, { "index": 15, "elapsedMs": 38410, "file": "frame-00015-t038410ms-paused.png", "runState": "paused", "taskState": "on", "mode": "auto", "interpState": "paused", "taskPaused": true, "motionPaused": true, "activeLine": 20, "sampleIndex": 313, "sourceFile": "helix_bc.ngc", "line": 20, "statement": "g0 x[#<_x> + #]", "currentVelocity": 0 }, { "index": 16, "elapsedMs": 41689, "file": "frame-00016-t041689ms-running.png", "runState": "running", "taskState": "on", "mode": "auto", "interpState": "reading", "taskPaused": false, "motionPaused": false, "activeLine": 16, "sampleIndex": 364, "sourceFile": "helix_bc.ngc", "line": 16, "statement": "g0b#c#", "currentVelocity": 203.7696 }, { "index": 17, "elapsedMs": 48427, "file": "frame-00017-t048427ms-running.png", "runState": "running", "taskState": "on", "mode": "auto", "interpState": "reading", "taskPaused": false, "motionPaused": false, "activeLine": 17, "sampleIndex": 479, "sourceFile": "helix_bc.ngc", "line": 17, "statement": "f# g2i#z# p#", "currentVelocity": 996.516 } ], "finalState": { "machineProfile": "xyzbc-trt", "selectedGcodeSourceRel": "configs/sim/axis/vismach/5axis/table-rotary-tilting/demos/xyzbc_switchkins.ngc", "taskHalLoaded": true, "taskHalRuntimeReadiness": { "apiName": "web-rtcp-5axis-linuxcnc-task-hal-runtime-readiness", "loaded": true, "semanticBoundary": "linuxcnc_task_motion_hal_wasm_simulation_runtime", "sdkSemanticBoundary": "linuxcnc_task_motion_hal_wasm_phase4_minimal", "executionContext": "direct", "workerUrl": null, "taskRuntimeReady": true, "motionRuntimeReady": true, "halRuntimeReady": true, "halSyncReady": true, "nativeTaskReady": true, "nativeHalSyncReady": true, "hardwareDrive": false, "hostRealtimeKernel": false, "externalUserMProcessReady": false }, "runState": "running", "taskState": "on", "powerOn": true, "estopActive": false, "allHomed": true, "mode": "auto", "interpState": "reading", "interpResumeState": "reading", "taskPaused": false, "motionPaused": false, "rtcpState": "on", "kinsType": "tcp-xyzbc", "activeLine": 17, "programExecutionSourceMode": "linuxcnc-task-motion-hal-wasm", "programExecutionSampleIndex": 484, "programRuntimeFeedback": { "apiName": "web-rtcp-5axis-program-runtime-feedback", "sourceMode": "linuxcnc-task-motion-hal-wasm", "semanticBoundary": "linuxcnc_task_motion_hal_wasm_simulation_runtime", "sampleIndex": 484, "motionIndex": 11, "line": 17, "motionProgramLine": 17, "halProgramLine": 17, "activeLineSource": "emc-status", "activeLineHalSynced": true, "type": "TASK_MOTION", "paused": false, "timeSeconds": 28.23, "axisPose": { "x": -11.1042, "y": 15.4442, "z": 7.62555, "a": 0, "b": 20, "c": 45 }, "currentVelocityMmPerMin": 996.516, "requestedVelocityMmPerMin": 996.516, "distanceToGo": 0, "dtg": { "x": 0, "y": 0, "z": 0 }, "queueDepth": 0, "activeDepth": 0, "cycle": 28230, "taskCycle": 2823, "halChangedPinCount": 0, "sourceFile": "helix_bc.ngc", "statement": "f# g2i#z# p#", "motionType": "arc", "activeKinematics": "tcp-xyzbc", "tcp": { "x": -11.1042, "y": 15.4442, "z": 7.62555 }, "toolAxis": { "i": 0.24184476264797528, "j": 0.24184476264797522, "k": 0.9396926207859084 }, "machineState": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 1000, "actualMmPerMin": 1000, "overridePercent": 100 }, "cutting": { "active": true, "cuttingSpeedMmPerMin": 1000 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } } }, "axisPose": { "x": -11.1042, "y": 15.4442, "z": 7.62555, "a": 0, "b": 20, "c": 45 }, "dro": { "x": -11.1042, "y": 15.4442, "z": 7.62555, "a": 0, "b": 20, "c": 45, "tcpX": -11.1042, "tcpY": 15.4442, "tcpZ": 7.62555, "dtgX": 0, "dtgY": 0, "dtgZ": 0 }, "programUiExecution": { "apiName": "web-rtcp-5axis-ui-gcode-live-execution", "status": "running", "source": "programAxisPreviewPath.samples", "samplePeriodMs": 50, "sampleIndex": 484, "sampleCount": 1300, "executedSampleCount": 485, "timeMs": 24200, "activeProgram": "configs/sim/axis/vismach/5axis/table-rotary-tilting/demos/xyzbc_switchkins.ngc", "sourceFile": "helix_bc.ngc", "line": 17, "statement": "f# g2i#z# p#", "operation": "feed-helix", "executionIndex": 26, "gcodeStepIndex": 62, "segmentIndex": 11, "motionType": "arc", "activeKinematics": "tcp-xyzbc", "joint": { "x": -11.1042, "y": 15.4442, "z": 7.62555, "a": 0, "b": 20, "c": 45 }, "tcp": { "x": -11.1042, "y": 15.4442, "z": 7.62555 }, "toolAxis": { "i": 0.24184476264797528, "j": 0.24184476264797522, "k": 0.9396926207859084 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "machineState": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 1000, "actualMmPerMin": 1000, "overridePercent": 100 }, "cutting": { "active": true, "cuttingSpeedMmPerMin": 1000 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "semanticBoundary": "ui_updates_from_real_expanded_linuxcnc_gcode_sample_stream" }, "samplePeriodMs": 50, "sampleCount": 1300, "gcodeExecutionProcess": { "apiName": "linuxcnc-xyzbc-trt-gcode-complete-execution-process", "status": "ok", "program": "xyzbc_switchkins.ngc", "sourceFiles": [ { "sourceFile": "xyzbc_switchkins.ngc", "lineCount": 3 }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "lineCount": 41 }, { "sourceFile": "helix_bc.ngc", "lineCount": 21 } ], "executionStepCount": 128, "sourceLineCoverage": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 1, "statement": "; zmax zmin r frate n a b c dist", "sourceLineKind": "comment", "visitCount": 1, "producedMotionCount": 0, "operations": [ "comment" ] }, { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "statement": "o call [10] [5] [10][1000][3][0][20][45][20]", "sourceLineKind": "call", "visitCount": 1, "producedMotionCount": 0, "operations": [ "call-subroutine" ] }, { "sourceFile": "xyzbc_switchkins.ngc", "line": 3, "statement": "m2", "sourceLineKind": "mcode", "visitCount": 1, "producedMotionCount": 0, "operations": [ "program-end" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 1, "statement": "; ngcgui-compatible subroutine", "sourceLineKind": "comment", "visitCount": 1, "producedMotionCount": 0, "operations": [ "comment" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 2, "statement": "(info: helix in each quadrant at angles B,C)", "sourceLineKind": "comment", "visitCount": 1, "producedMotionCount": 0, "operations": [ "info-comment" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 3, "statement": "osub", "sourceLineKind": "subroutine-boundary", "visitCount": 1, "producedMotionCount": 0, "operations": [ "subroutine-enter" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 4, "statement": "# = #1 (=10)", "sourceLineKind": "assignment", "visitCount": 1, "producedMotionCount": 0, "operations": [ "parameter-assignment" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 5, "statement": "# = #2 (= 5)", "sourceLineKind": "assignment", "visitCount": 1, "producedMotionCount": 0, "operations": [ "parameter-assignment" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 6, "statement": "# = #3 (=10 radius)", "sourceLineKind": "assignment", "visitCount": 1, "producedMotionCount": 0, "operations": [ "parameter-assignment" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 7, "statement": "# = #4 (=1000 feedrate)", "sourceLineKind": "assignment", "visitCount": 1, "producedMotionCount": 0, "operations": [ "parameter-assignment" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 8, "statement": "# = #5 (=3 n circles)", "sourceLineKind": "assignment", "visitCount": 1, "producedMotionCount": 0, "operations": [ "parameter-assignment" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 9, "statement": "# = #6 (=0 A angle NA)", "sourceLineKind": "assignment", "visitCount": 1, "producedMotionCount": 0, "operations": [ "parameter-assignment" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 10, "statement": "# = #7 (=30 B angle)", "sourceLineKind": "assignment", "visitCount": 1, "producedMotionCount": 0, "operations": [ "parameter-assignment" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 11, "statement": "# = #8 (=45 C angle)", "sourceLineKind": "assignment", "visitCount": 1, "producedMotionCount": 0, "operations": [ "parameter-assignment" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 12, "statement": "# = #9 (=20 distance)", "sourceLineKind": "assignment", "visitCount": 1, "producedMotionCount": 0, "operations": [ "parameter-assignment" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 14, "statement": "; quadrant I", "sourceLineKind": "comment", "visitCount": 1, "producedMotionCount": 0, "operations": [ "comment-quadrant-I" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 15, "statement": "M429 ;Identity kinematics", "sourceLineKind": "mcode", "visitCount": 1, "producedMotionCount": 0, "operations": [ "switchkins-identity" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 16, "statement": "g53 g0 x0y0 z# b0 c0 ;MACHINE coordinates", "sourceLineKind": "motion", "visitCount": 1, "producedMotionCount": 1, "operations": [ "rapid-machine-reset" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 17, "statement": "g10l20p0 x0y0 z# b0 c0 ;new g54", "sourceLineKind": "offset", "visitCount": 1, "producedMotionCount": 0, "operations": [ "set-g54-offset" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 18, "statement": "g0 x+# y+# z# ;move to pattern center position", "sourceLineKind": "motion", "visitCount": 1, "producedMotionCount": 1, "operations": [ "rapid-to-quadrant-center" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "statement": "o call [#][#][#][#][#][#][#][#]", "sourceLineKind": "call", "visitCount": 1, "producedMotionCount": 0, "operations": [ "call-subroutine" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 21, "statement": "; quadrant II", "sourceLineKind": "comment", "visitCount": 1, "producedMotionCount": 0, "operations": [ "comment-quadrant-II" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 22, "statement": "M429 ;Identity kinematics", "sourceLineKind": "mcode", "visitCount": 1, "producedMotionCount": 0, "operations": [ "switchkins-identity" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 23, "statement": "g53 g0 x0y0 z# b0 c0", "sourceLineKind": "motion", "visitCount": 1, "producedMotionCount": 1, "operations": [ "rapid-machine-reset" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 24, "statement": "g10l20p0 x0y0 z# b0 c0", "sourceLineKind": "offset", "visitCount": 1, "producedMotionCount": 0, "operations": [ "set-g54-offset" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 25, "statement": "g0 x-# y+# z#", "sourceLineKind": "motion", "visitCount": 1, "producedMotionCount": 1, "operations": [ "rapid-to-quadrant-center" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "statement": "o call [#][#][#][#][#][#][#][#]", "sourceLineKind": "call", "visitCount": 1, "producedMotionCount": 0, "operations": [ "call-subroutine" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 28, "statement": "; quadrant III", "sourceLineKind": "comment", "visitCount": 1, "producedMotionCount": 0, "operations": [ "comment-quadrant-III" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 29, "statement": "M429 ;Identity kinematics", "sourceLineKind": "mcode", "visitCount": 1, "producedMotionCount": 0, "operations": [ "switchkins-identity" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 30, "statement": "g53 g0 x0y0 z# b0 c0", "sourceLineKind": "motion", "visitCount": 1, "producedMotionCount": 1, "operations": [ "rapid-machine-reset" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 31, "statement": "g10l20p0 x0y0 z# b0 c0", "sourceLineKind": "offset", "visitCount": 1, "producedMotionCount": 0, "operations": [ "set-g54-offset" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 32, "statement": "g0 x-# y-# z#", "sourceLineKind": "motion", "visitCount": 1, "producedMotionCount": 1, "operations": [ "rapid-to-quadrant-center" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "statement": "o call [#][#][#][#][#][#][#][#]", "sourceLineKind": "call", "visitCount": 1, "producedMotionCount": 0, "operations": [ "call-subroutine" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 35, "statement": "; quadrant IV", "sourceLineKind": "comment", "visitCount": 1, "producedMotionCount": 0, "operations": [ "comment-quadrant-IV" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 36, "statement": "M429 ;Identity kinematics", "sourceLineKind": "mcode", "visitCount": 1, "producedMotionCount": 0, "operations": [ "switchkins-identity" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 37, "statement": "g53 g0 x0y0 z# b0 c0", "sourceLineKind": "motion", "visitCount": 1, "producedMotionCount": 1, "operations": [ "rapid-machine-reset" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 38, "statement": "g10l20p0 x0y0 z# b0 c0", "sourceLineKind": "offset", "visitCount": 1, "producedMotionCount": 0, "operations": [ "set-g54-offset" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 39, "statement": "g0 x+# y-# z#", "sourceLineKind": "motion", "visitCount": 1, "producedMotionCount": 1, "operations": [ "rapid-to-quadrant-center" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "statement": "o call [#][#][#][#][#][#][#][#]", "sourceLineKind": "call", "visitCount": 1, "producedMotionCount": 0, "operations": [ "call-subroutine" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 42, "statement": ";final position", "sourceLineKind": "comment", "visitCount": 1, "producedMotionCount": 0, "operations": [ "comment-final-position" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 43, "statement": "M429 ;Identity kinematics", "sourceLineKind": "mcode", "visitCount": 1, "producedMotionCount": 0, "operations": [ "switchkins-identity" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 44, "statement": "g53 g0 x0y0 z# ;MACHINE coordinates", "sourceLineKind": "motion", "visitCount": 1, "producedMotionCount": 1, "operations": [ "rapid-final-machine-reset" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 45, "statement": "g10l20p0 x0y0 z# ;new g54", "sourceLineKind": "offset", "visitCount": 1, "producedMotionCount": 0, "operations": [ "set-g54-offset" ] }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 47, "statement": "oendsub", "sourceLineKind": "subroutine-boundary", "visitCount": 1, "producedMotionCount": 0, "operations": [ "subroutine-exit" ] }, { "sourceFile": "helix_bc.ngc", "line": 1, "statement": "; helix using switchkins (xyzbc) b,c angles", "sourceLineKind": "comment", "visitCount": 4, "producedMotionCount": 0, "operations": [ "comment" ] }, { "sourceFile": "helix_bc.ngc", "line": 2, "statement": "osub", "sourceLineKind": "subroutine-boundary", "visitCount": 4, "producedMotionCount": 0, "operations": [ "subroutine-enter" ] }, { "sourceFile": "helix_bc.ngc", "line": 3, "statement": "# = #1 (=10)", "sourceLineKind": "assignment", "visitCount": 4, "producedMotionCount": 0, "operations": [ "parameter-assignment" ] }, { "sourceFile": "helix_bc.ngc", "line": 4, "statement": "# = #2 (= 5)", "sourceLineKind": "assignment", "visitCount": 4, "producedMotionCount": 0, "operations": [ "parameter-assignment" ] }, { "sourceFile": "helix_bc.ngc", "line": 5, "statement": "# = #3 (=10)", "sourceLineKind": "assignment", "visitCount": 4, "producedMotionCount": 0, "operations": [ "parameter-assignment" ] }, { "sourceFile": "helix_bc.ngc", "line": 6, "statement": "# = #4 (=1000)", "sourceLineKind": "assignment", "visitCount": 4, "producedMotionCount": 0, "operations": [ "parameter-assignment" ] }, { "sourceFile": "helix_bc.ngc", "line": 7, "statement": "# = #5 (=3)", "sourceLineKind": "assignment", "visitCount": 4, "producedMotionCount": 0, "operations": [ "parameter-assignment" ] }, { "sourceFile": "helix_bc.ngc", "line": 8, "statement": "# = #6 (=0 NA)", "sourceLineKind": "assignment", "visitCount": 4, "producedMotionCount": 0, "operations": [ "parameter-assignment" ] }, { "sourceFile": "helix_bc.ngc", "line": 9, "statement": "# = #7 (=45)", "sourceLineKind": "assignment", "visitCount": 4, "producedMotionCount": 0, "operations": [ "parameter-assignment" ] }, { "sourceFile": "helix_bc.ngc", "line": 10, "statement": "# = #8 (=20)", "sourceLineKind": "assignment", "visitCount": 4, "producedMotionCount": 0, "operations": [ "parameter-assignment" ] }, { "sourceFile": "helix_bc.ngc", "line": 12, "statement": "M429 ;Identity kinematics", "sourceLineKind": "mcode", "visitCount": 4, "producedMotionCount": 0, "operations": [ "switchkins-identity" ] }, { "sourceFile": "helix_bc.ngc", "line": 13, "statement": "g0 x[#<_x> - #] ;adjust for radius", "sourceLineKind": "motion", "visitCount": 4, "producedMotionCount": 4, "operations": [ "rapid-radius-adjust" ] }, { "sourceFile": "helix_bc.ngc", "line": 14, "statement": "g10l20p0 x0y0 z# b0 c0 ;new g54", "sourceLineKind": "offset", "visitCount": 4, "producedMotionCount": 0, "operations": [ "set-g54-offset" ] }, { "sourceFile": "helix_bc.ngc", "line": 15, "statement": "M428 ;XYZBC", "sourceLineKind": "mcode", "visitCount": 4, "producedMotionCount": 0, "operations": [ "switchkins-tcp-xyzbc" ] }, { "sourceFile": "helix_bc.ngc", "line": 16, "statement": "g0b#c# ;exercise b,c", "sourceLineKind": "motion", "visitCount": 4, "producedMotionCount": 4, "operations": [ "rapid-bc-orient" ] }, { "sourceFile": "helix_bc.ngc", "line": 17, "statement": "f# g2i#z# p# ;helix", "sourceLineKind": "motion", "visitCount": 4, "producedMotionCount": 4, "operations": [ "feed-helix" ] }, { "sourceFile": "helix_bc.ngc", "line": 18, "statement": "M429 ;Identity kinematics", "sourceLineKind": "mcode", "visitCount": 4, "producedMotionCount": 0, "operations": [ "switchkins-identity" ] }, { "sourceFile": "helix_bc.ngc", "line": 19, "statement": "g0 x0 y0 z# b0 c0 ;return to start", "sourceLineKind": "motion", "visitCount": 4, "producedMotionCount": 4, "operations": [ "rapid-return-to-start" ] }, { "sourceFile": "helix_bc.ngc", "line": 20, "statement": "g0 x[#<_x> + #] ;adjust restore", "sourceLineKind": "motion", "visitCount": 4, "producedMotionCount": 4, "operations": [ "rapid-radius-restore" ] }, { "sourceFile": "helix_bc.ngc", "line": 21, "statement": "M428 ;XYZBC", "sourceLineKind": "mcode", "visitCount": 4, "producedMotionCount": 0, "operations": [ "switchkins-tcp-xyzbc" ] }, { "sourceFile": "helix_bc.ngc", "line": 22, "statement": "oendsub", "sourceLineKind": "subroutine-boundary", "visitCount": 4, "producedMotionCount": 0, "operations": [ "subroutine-exit" ] } ], "executionSteps": [ { "stepIndex": 0, "sourceFile": "xyzbc_switchkins.ngc", "line": 1, "statement": "; zmax zmin r frate n a b c dist", "callDepth": 0, "callStack": [], "executed": false, "sourceLineKind": "comment", "result": { "status": "ok", "operation": "comment", "sourceLineKind": "comment", "executed": false, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 1, "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "statement": "o call [10] [5] [10][1000][3][0][20][45][20]", "callDepth": 0, "callStack": [], "executed": true, "sourceLineKind": "call", "result": { "status": "ok", "operation": "call-subroutine", "sourceLineKind": "call", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 0, "notes": [] } }, { "stepIndex": 2, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 1, "statement": "; ngcgui-compatible subroutine", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": false, "sourceLineKind": "comment", "result": { "status": "ok", "operation": "comment", "sourceLineKind": "comment", "executed": false, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 3, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 2, "statement": "(info: helix in each quadrant at angles B,C)", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": false, "sourceLineKind": "comment", "result": { "status": "ok", "operation": "info-comment", "sourceLineKind": "comment", "executed": false, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 4, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 3, "statement": "osub", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "subroutine-boundary", "result": { "status": "ok", "operation": "subroutine-enter", "sourceLineKind": "subroutine-boundary", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 5, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 4, "statement": "# = #1 (=10)", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": {}, "parametersChanged": { "zmax": 10 }, "parametersAfter": { "zmax": 10 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 6, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 5, "statement": "# = #2 (= 5)", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10 }, "parametersChanged": { "zmin": 5 }, "parametersAfter": { "zmax": 10, "zmin": 5 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 7, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 6, "statement": "# = #3 (=10 radius)", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5 }, "parametersChanged": { "r": 10 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 8, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 7, "statement": "# = #4 (=1000 feedrate)", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10 }, "parametersChanged": { "frate": 1000 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 9, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 8, "statement": "# = #5 (=3 n circles)", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000 }, "parametersChanged": { "n": 3 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 10, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 9, "statement": "# = #6 (=0 A angle NA)", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3 }, "parametersChanged": { "a": 0 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 11, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 10, "statement": "# = #7 (=30 B angle)", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0 }, "parametersChanged": { "b": 20 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 12, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 11, "statement": "# = #8 (=45 C angle)", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20 }, "parametersChanged": { "c": 45 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 13, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 12, "statement": "# = #9 (=20 distance)", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45 }, "parametersChanged": { "dist": 20 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 14, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 14, "statement": "; quadrant I", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": false, "sourceLineKind": "comment", "result": { "status": "ok", "operation": "comment-quadrant-I", "sourceLineKind": "comment", "executed": false, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 15, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 15, "statement": "M429 ;Identity kinematics", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-identity", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "identity", "code": "M429" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 1, "notes": [] } }, { "stepIndex": 16, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 16, "statement": "g53 g0 x0y0 z# b0 c0 ;MACHINE coordinates", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-machine-reset", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 0, "motionType": "rapid", "feed": 2100, "startJoint": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": 0, "y": 0, "z": 10 }, "endTcp": { "x": 0, "y": 0, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 0, "actualMmPerMin": 0, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 2, "notes": [] } }, { "stepIndex": 17, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 17, "statement": "g10l20p0 x0y0 z# b0 c0 ;new g54", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "offset", "result": { "status": "ok", "operation": "set-g54-offset", "sourceLineKind": "offset", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "workOffsetAfter": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "modalChange": { "coordinateSystem": "G54", "code": "G10 L20 P0" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 3, "notes": [] } }, { "stepIndex": 18, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 18, "statement": "g0 x+# y+# z# ;move to pattern center position", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-to-quadrant-center", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 1, "motionType": "rapid", "feed": 2100, "startJoint": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": 20, "y": 20, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": 0, "y": 0, "z": 10 }, "endTcp": { "x": 20, "y": 20, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 4, "notes": [] } }, { "stepIndex": 19, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "statement": "o call [#][#][#][#][#][#][#][#]", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "call", "result": { "status": "ok", "operation": "call-subroutine", "sourceLineKind": "call", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 5, "notes": [] } }, { "stepIndex": 20, "sourceFile": "helix_bc.ngc", "line": 1, "statement": "; helix using switchkins (xyzbc) b,c angles", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": false, "sourceLineKind": "comment", "result": { "status": "ok", "operation": "comment", "sourceLineKind": "comment", "executed": false, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 21, "sourceFile": "helix_bc.ngc", "line": 2, "statement": "osub", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": true, "sourceLineKind": "subroutine-boundary", "result": { "status": "ok", "operation": "subroutine-enter", "sourceLineKind": "subroutine-boundary", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 22, "sourceFile": "helix_bc.ngc", "line": 3, "statement": "# = #1 (=10)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "zmax": 10 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 23, "sourceFile": "helix_bc.ngc", "line": 4, "statement": "# = #2 (= 5)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "zmin": 5 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 24, "sourceFile": "helix_bc.ngc", "line": 5, "statement": "# = #3 (=10)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "r": 10 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 25, "sourceFile": "helix_bc.ngc", "line": 6, "statement": "# = #4 (=1000)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "frate": 1000 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 26, "sourceFile": "helix_bc.ngc", "line": 7, "statement": "# = #5 (=3)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "n": 3 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 27, "sourceFile": "helix_bc.ngc", "line": 8, "statement": "# = #6 (=0 NA)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "a": 0 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 28, "sourceFile": "helix_bc.ngc", "line": 9, "statement": "# = #7 (=45)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "b": 20 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 29, "sourceFile": "helix_bc.ngc", "line": 10, "statement": "# = #8 (=20)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "c": 45 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 30, "sourceFile": "helix_bc.ngc", "line": 12, "statement": "M429 ;Identity kinematics", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-identity", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "identity", "code": "M429" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 6, "notes": [] } }, { "stepIndex": 31, "sourceFile": "helix_bc.ngc", "line": 13, "statement": "g0 x[#<_x> - #] ;adjust for radius", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-radius-adjust", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 2, "motionType": "rapid", "feed": 2100, "startJoint": { "x": 20, "y": 20, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": 10, "y": 20, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": 20, "y": 20, "z": 10 }, "endTcp": { "x": 10, "y": 20, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 7, "notes": [] } }, { "stepIndex": 32, "sourceFile": "helix_bc.ngc", "line": 14, "statement": "g10l20p0 x0y0 z# b0 c0 ;new g54", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": true, "sourceLineKind": "offset", "result": { "status": "ok", "operation": "set-g54-offset", "sourceLineKind": "offset", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "workOffsetAfter": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "modalChange": { "coordinateSystem": "G54", "code": "G10 L20 P0" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 8, "notes": [] } }, { "stepIndex": 33, "sourceFile": "helix_bc.ngc", "line": 15, "statement": "M428 ;XYZBC", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-tcp-xyzbc", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "tcp-xyzbc", "code": "M428" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 9, "notes": [] } }, { "stepIndex": 34, "sourceFile": "helix_bc.ngc", "line": 16, "statement": "g0b#c# ;exercise b,c", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-bc-orient", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 3, "motionType": "rapid", "feed": 2100, "startJoint": { "x": 10, "y": 20, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": 10, "y": 20, "z": 10, "b": 20, "c": 45 }, "startTcp": { "x": 10, "y": 20, "z": 10 }, "endTcp": { "x": 10, "y": 20, "z": 10 }, "endToolAxis": { "i": 0.24184476264797528, "j": 0.24184476264797522, "k": 0.9396926207859084 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 10, "notes": [] } }, { "stepIndex": 35, "sourceFile": "helix_bc.ngc", "line": 17, "statement": "f# g2i#z# p# ;helix", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "feed-helix", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 4, "motionType": "arc", "feed": 1000, "startJoint": { "x": 10, "y": 20, "z": 10, "b": 20, "c": 45 }, "endJoint": { "x": 10, "y": 20, "z": 5, "b": 20, "c": 45 }, "startTcp": { "x": 10, "y": 20, "z": 10 }, "endTcp": { "x": 10, "y": 20, "z": 5 }, "endToolAxis": { "i": 0.24184476264797528, "j": 0.24184476264797522, "k": 0.9396926207859084 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 1000, "actualMmPerMin": 1000, "overridePercent": 100 }, "cutting": { "active": true, "cuttingSpeedMmPerMin": 1000 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 11, "notes": [] } }, { "stepIndex": 36, "sourceFile": "helix_bc.ngc", "line": 18, "statement": "M429 ;Identity kinematics", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-identity", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "identity", "code": "M429" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 1000, "actualMmPerMin": 1000, "overridePercent": 100 }, "cutting": { "active": true, "cuttingSpeedMmPerMin": 1000 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 1000, "actualMmPerMin": 1000, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 12, "notes": [] } }, { "stepIndex": 37, "sourceFile": "helix_bc.ngc", "line": 19, "statement": "g0 x0 y0 z# b0 c0 ;return to start", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-return-to-start", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 5, "motionType": "rapid", "feed": 2100, "startJoint": { "x": 10, "y": 20, "z": 5, "b": 20, "c": 45 }, "endJoint": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": 10, "y": 20, "z": 5 }, "endTcp": { "x": 0, "y": 0, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 1000, "actualMmPerMin": 1000, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 13, "notes": [] } }, { "stepIndex": 38, "sourceFile": "helix_bc.ngc", "line": 20, "statement": "g0 x[#<_x> + #] ;adjust restore", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-radius-restore", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 6, "motionType": "rapid", "feed": 2100, "startJoint": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": 10, "y": 0, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": 0, "y": 0, "z": 10 }, "endTcp": { "x": 10, "y": 0, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 14, "notes": [] } }, { "stepIndex": 39, "sourceFile": "helix_bc.ngc", "line": 21, "statement": "M428 ;XYZBC", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-tcp-xyzbc", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "tcp-xyzbc", "code": "M428" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 15, "notes": [] } }, { "stepIndex": 40, "sourceFile": "helix_bc.ngc", "line": 22, "statement": "oendsub", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 19, "call": "o" } ], "executed": true, "sourceLineKind": "subroutine-boundary", "result": { "status": "ok", "operation": "subroutine-exit", "sourceLineKind": "subroutine-boundary", "executed": true, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 41, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 21, "statement": "; quadrant II", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": false, "sourceLineKind": "comment", "result": { "status": "ok", "operation": "comment-quadrant-II", "sourceLineKind": "comment", "executed": false, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 42, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 22, "statement": "M429 ;Identity kinematics", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-identity", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "identity", "code": "M429" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 16, "notes": [] } }, { "stepIndex": 43, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 23, "statement": "g53 g0 x0y0 z# b0 c0", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-machine-reset", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 7, "motionType": "rapid", "feed": 2100, "startJoint": { "x": 10, "y": 0, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": 10, "y": 0, "z": 10 }, "endTcp": { "x": 0, "y": 0, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 17, "notes": [] } }, { "stepIndex": 44, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 24, "statement": "g10l20p0 x0y0 z# b0 c0", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "offset", "result": { "status": "ok", "operation": "set-g54-offset", "sourceLineKind": "offset", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "workOffsetAfter": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "modalChange": { "coordinateSystem": "G54", "code": "G10 L20 P0" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 18, "notes": [] } }, { "stepIndex": 45, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 25, "statement": "g0 x-# y+# z#", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-to-quadrant-center", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 8, "motionType": "rapid", "feed": 2100, "startJoint": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": -20, "y": 20, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": 0, "y": 0, "z": 10 }, "endTcp": { "x": -20, "y": 20, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 19, "notes": [] } }, { "stepIndex": 46, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "statement": "o call [#][#][#][#][#][#][#][#]", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "call", "result": { "status": "ok", "operation": "call-subroutine", "sourceLineKind": "call", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 20, "notes": [] } }, { "stepIndex": 47, "sourceFile": "helix_bc.ngc", "line": 1, "statement": "; helix using switchkins (xyzbc) b,c angles", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": false, "sourceLineKind": "comment", "result": { "status": "ok", "operation": "comment", "sourceLineKind": "comment", "executed": false, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 48, "sourceFile": "helix_bc.ngc", "line": 2, "statement": "osub", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": true, "sourceLineKind": "subroutine-boundary", "result": { "status": "ok", "operation": "subroutine-enter", "sourceLineKind": "subroutine-boundary", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 49, "sourceFile": "helix_bc.ngc", "line": 3, "statement": "# = #1 (=10)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "zmax": 10 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 50, "sourceFile": "helix_bc.ngc", "line": 4, "statement": "# = #2 (= 5)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "zmin": 5 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 51, "sourceFile": "helix_bc.ngc", "line": 5, "statement": "# = #3 (=10)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "r": 10 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 52, "sourceFile": "helix_bc.ngc", "line": 6, "statement": "# = #4 (=1000)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "frate": 1000 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 53, "sourceFile": "helix_bc.ngc", "line": 7, "statement": "# = #5 (=3)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "n": 3 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 54, "sourceFile": "helix_bc.ngc", "line": 8, "statement": "# = #6 (=0 NA)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "a": 0 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 55, "sourceFile": "helix_bc.ngc", "line": 9, "statement": "# = #7 (=45)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "b": 20 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 56, "sourceFile": "helix_bc.ngc", "line": 10, "statement": "# = #8 (=20)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "c": 45 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 57, "sourceFile": "helix_bc.ngc", "line": 12, "statement": "M429 ;Identity kinematics", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-identity", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "identity", "code": "M429" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 21, "notes": [] } }, { "stepIndex": 58, "sourceFile": "helix_bc.ngc", "line": 13, "statement": "g0 x[#<_x> - #] ;adjust for radius", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-radius-adjust", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 9, "motionType": "rapid", "feed": 2100, "startJoint": { "x": -20, "y": 20, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": -30, "y": 20, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": -20, "y": 20, "z": 10 }, "endTcp": { "x": -30, "y": 20, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 22, "notes": [] } }, { "stepIndex": 59, "sourceFile": "helix_bc.ngc", "line": 14, "statement": "g10l20p0 x0y0 z# b0 c0 ;new g54", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": true, "sourceLineKind": "offset", "result": { "status": "ok", "operation": "set-g54-offset", "sourceLineKind": "offset", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "workOffsetAfter": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "modalChange": { "coordinateSystem": "G54", "code": "G10 L20 P0" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 23, "notes": [] } }, { "stepIndex": 60, "sourceFile": "helix_bc.ngc", "line": 15, "statement": "M428 ;XYZBC", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-tcp-xyzbc", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "tcp-xyzbc", "code": "M428" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 24, "notes": [] } }, { "stepIndex": 61, "sourceFile": "helix_bc.ngc", "line": 16, "statement": "g0b#c# ;exercise b,c", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-bc-orient", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 10, "motionType": "rapid", "feed": 2100, "startJoint": { "x": -30, "y": 20, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": -30, "y": 20, "z": 10, "b": 20, "c": 45 }, "startTcp": { "x": -30, "y": 20, "z": 10 }, "endTcp": { "x": -30, "y": 20, "z": 10 }, "endToolAxis": { "i": 0.24184476264797528, "j": 0.24184476264797522, "k": 0.9396926207859084 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 25, "notes": [] } }, { "stepIndex": 62, "sourceFile": "helix_bc.ngc", "line": 17, "statement": "f# g2i#z# p# ;helix", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "feed-helix", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 11, "motionType": "arc", "feed": 1000, "startJoint": { "x": -30, "y": 20, "z": 10, "b": 20, "c": 45 }, "endJoint": { "x": -30, "y": 20, "z": 5, "b": 20, "c": 45 }, "startTcp": { "x": -30, "y": 20, "z": 10 }, "endTcp": { "x": -30, "y": 20, "z": 5 }, "endToolAxis": { "i": 0.24184476264797528, "j": 0.24184476264797522, "k": 0.9396926207859084 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 1000, "actualMmPerMin": 1000, "overridePercent": 100 }, "cutting": { "active": true, "cuttingSpeedMmPerMin": 1000 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 26, "notes": [] } }, { "stepIndex": 63, "sourceFile": "helix_bc.ngc", "line": 18, "statement": "M429 ;Identity kinematics", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-identity", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "identity", "code": "M429" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 1000, "actualMmPerMin": 1000, "overridePercent": 100 }, "cutting": { "active": true, "cuttingSpeedMmPerMin": 1000 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 1000, "actualMmPerMin": 1000, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 27, "notes": [] } }, { "stepIndex": 64, "sourceFile": "helix_bc.ngc", "line": 19, "statement": "g0 x0 y0 z# b0 c0 ;return to start", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-return-to-start", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 12, "motionType": "rapid", "feed": 2100, "startJoint": { "x": -30, "y": 20, "z": 5, "b": 20, "c": 45 }, "endJoint": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": -30, "y": 20, "z": 5 }, "endTcp": { "x": 0, "y": 0, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 1000, "actualMmPerMin": 1000, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 28, "notes": [] } }, { "stepIndex": 65, "sourceFile": "helix_bc.ngc", "line": 20, "statement": "g0 x[#<_x> + #] ;adjust restore", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-radius-restore", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 13, "motionType": "rapid", "feed": 2100, "startJoint": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": 10, "y": 0, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": 0, "y": 0, "z": 10 }, "endTcp": { "x": 10, "y": 0, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 29, "notes": [] } }, { "stepIndex": 66, "sourceFile": "helix_bc.ngc", "line": 21, "statement": "M428 ;XYZBC", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-tcp-xyzbc", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "tcp-xyzbc", "code": "M428" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 30, "notes": [] } }, { "stepIndex": 67, "sourceFile": "helix_bc.ngc", "line": 22, "statement": "oendsub", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 26, "call": "o" } ], "executed": true, "sourceLineKind": "subroutine-boundary", "result": { "status": "ok", "operation": "subroutine-exit", "sourceLineKind": "subroutine-boundary", "executed": true, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 68, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 28, "statement": "; quadrant III", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": false, "sourceLineKind": "comment", "result": { "status": "ok", "operation": "comment-quadrant-III", "sourceLineKind": "comment", "executed": false, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 69, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 29, "statement": "M429 ;Identity kinematics", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-identity", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "identity", "code": "M429" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 31, "notes": [] } }, { "stepIndex": 70, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 30, "statement": "g53 g0 x0y0 z# b0 c0", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-machine-reset", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 14, "motionType": "rapid", "feed": 2100, "startJoint": { "x": 10, "y": 0, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": 10, "y": 0, "z": 10 }, "endTcp": { "x": 0, "y": 0, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 32, "notes": [] } }, { "stepIndex": 71, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 31, "statement": "g10l20p0 x0y0 z# b0 c0", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "offset", "result": { "status": "ok", "operation": "set-g54-offset", "sourceLineKind": "offset", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "workOffsetAfter": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "modalChange": { "coordinateSystem": "G54", "code": "G10 L20 P0" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 33, "notes": [] } }, { "stepIndex": 72, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 32, "statement": "g0 x-# y-# z#", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-to-quadrant-center", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 15, "motionType": "rapid", "feed": 2100, "startJoint": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": -20, "y": -20, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": 0, "y": 0, "z": 10 }, "endTcp": { "x": -20, "y": -20, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 34, "notes": [] } }, { "stepIndex": 73, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "statement": "o call [#][#][#][#][#][#][#][#]", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "call", "result": { "status": "ok", "operation": "call-subroutine", "sourceLineKind": "call", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 35, "notes": [] } }, { "stepIndex": 74, "sourceFile": "helix_bc.ngc", "line": 1, "statement": "; helix using switchkins (xyzbc) b,c angles", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": false, "sourceLineKind": "comment", "result": { "status": "ok", "operation": "comment", "sourceLineKind": "comment", "executed": false, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 75, "sourceFile": "helix_bc.ngc", "line": 2, "statement": "osub", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": true, "sourceLineKind": "subroutine-boundary", "result": { "status": "ok", "operation": "subroutine-enter", "sourceLineKind": "subroutine-boundary", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 76, "sourceFile": "helix_bc.ngc", "line": 3, "statement": "# = #1 (=10)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "zmax": 10 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 77, "sourceFile": "helix_bc.ngc", "line": 4, "statement": "# = #2 (= 5)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "zmin": 5 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 78, "sourceFile": "helix_bc.ngc", "line": 5, "statement": "# = #3 (=10)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "r": 10 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 79, "sourceFile": "helix_bc.ngc", "line": 6, "statement": "# = #4 (=1000)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "frate": 1000 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 80, "sourceFile": "helix_bc.ngc", "line": 7, "statement": "# = #5 (=3)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "n": 3 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 81, "sourceFile": "helix_bc.ngc", "line": 8, "statement": "# = #6 (=0 NA)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "a": 0 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 82, "sourceFile": "helix_bc.ngc", "line": 9, "statement": "# = #7 (=45)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "b": 20 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 83, "sourceFile": "helix_bc.ngc", "line": 10, "statement": "# = #8 (=20)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "c": 45 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 84, "sourceFile": "helix_bc.ngc", "line": 12, "statement": "M429 ;Identity kinematics", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-identity", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "identity", "code": "M429" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 36, "notes": [] } }, { "stepIndex": 85, "sourceFile": "helix_bc.ngc", "line": 13, "statement": "g0 x[#<_x> - #] ;adjust for radius", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-radius-adjust", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 16, "motionType": "rapid", "feed": 2100, "startJoint": { "x": -20, "y": -20, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": -30, "y": -20, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": -20, "y": -20, "z": 10 }, "endTcp": { "x": -30, "y": -20, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 37, "notes": [] } }, { "stepIndex": 86, "sourceFile": "helix_bc.ngc", "line": 14, "statement": "g10l20p0 x0y0 z# b0 c0 ;new g54", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": true, "sourceLineKind": "offset", "result": { "status": "ok", "operation": "set-g54-offset", "sourceLineKind": "offset", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "workOffsetAfter": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "modalChange": { "coordinateSystem": "G54", "code": "G10 L20 P0" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 38, "notes": [] } }, { "stepIndex": 87, "sourceFile": "helix_bc.ngc", "line": 15, "statement": "M428 ;XYZBC", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-tcp-xyzbc", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "tcp-xyzbc", "code": "M428" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 39, "notes": [] } }, { "stepIndex": 88, "sourceFile": "helix_bc.ngc", "line": 16, "statement": "g0b#c# ;exercise b,c", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-bc-orient", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 17, "motionType": "rapid", "feed": 2100, "startJoint": { "x": -30, "y": -20, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": -30, "y": -20, "z": 10, "b": 20, "c": 45 }, "startTcp": { "x": -30, "y": -20, "z": 10 }, "endTcp": { "x": -30, "y": -20, "z": 10 }, "endToolAxis": { "i": 0.24184476264797528, "j": 0.24184476264797522, "k": 0.9396926207859084 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 40, "notes": [] } }, { "stepIndex": 89, "sourceFile": "helix_bc.ngc", "line": 17, "statement": "f# g2i#z# p# ;helix", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "feed-helix", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 18, "motionType": "arc", "feed": 1000, "startJoint": { "x": -30, "y": -20, "z": 10, "b": 20, "c": 45 }, "endJoint": { "x": -30, "y": -20, "z": 5, "b": 20, "c": 45 }, "startTcp": { "x": -30, "y": -20, "z": 10 }, "endTcp": { "x": -30, "y": -20, "z": 5 }, "endToolAxis": { "i": 0.24184476264797528, "j": 0.24184476264797522, "k": 0.9396926207859084 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 1000, "actualMmPerMin": 1000, "overridePercent": 100 }, "cutting": { "active": true, "cuttingSpeedMmPerMin": 1000 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 41, "notes": [] } }, { "stepIndex": 90, "sourceFile": "helix_bc.ngc", "line": 18, "statement": "M429 ;Identity kinematics", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-identity", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "identity", "code": "M429" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 1000, "actualMmPerMin": 1000, "overridePercent": 100 }, "cutting": { "active": true, "cuttingSpeedMmPerMin": 1000 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 1000, "actualMmPerMin": 1000, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 42, "notes": [] } }, { "stepIndex": 91, "sourceFile": "helix_bc.ngc", "line": 19, "statement": "g0 x0 y0 z# b0 c0 ;return to start", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-return-to-start", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 19, "motionType": "rapid", "feed": 2100, "startJoint": { "x": -30, "y": -20, "z": 5, "b": 20, "c": 45 }, "endJoint": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": -30, "y": -20, "z": 5 }, "endTcp": { "x": 0, "y": 0, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 1000, "actualMmPerMin": 1000, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 43, "notes": [] } }, { "stepIndex": 92, "sourceFile": "helix_bc.ngc", "line": 20, "statement": "g0 x[#<_x> + #] ;adjust restore", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-radius-restore", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 20, "motionType": "rapid", "feed": 2100, "startJoint": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": 10, "y": 0, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": 0, "y": 0, "z": 10 }, "endTcp": { "x": 10, "y": 0, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 44, "notes": [] } }, { "stepIndex": 93, "sourceFile": "helix_bc.ngc", "line": 21, "statement": "M428 ;XYZBC", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-tcp-xyzbc", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "tcp-xyzbc", "code": "M428" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 45, "notes": [] } }, { "stepIndex": 94, "sourceFile": "helix_bc.ngc", "line": 22, "statement": "oendsub", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 33, "call": "o" } ], "executed": true, "sourceLineKind": "subroutine-boundary", "result": { "status": "ok", "operation": "subroutine-exit", "sourceLineKind": "subroutine-boundary", "executed": true, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 95, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 35, "statement": "; quadrant IV", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": false, "sourceLineKind": "comment", "result": { "status": "ok", "operation": "comment-quadrant-IV", "sourceLineKind": "comment", "executed": false, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 96, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 36, "statement": "M429 ;Identity kinematics", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-identity", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "identity", "code": "M429" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 46, "notes": [] } }, { "stepIndex": 97, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 37, "statement": "g53 g0 x0y0 z# b0 c0", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-machine-reset", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 21, "motionType": "rapid", "feed": 2100, "startJoint": { "x": 10, "y": 0, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": 10, "y": 0, "z": 10 }, "endTcp": { "x": 0, "y": 0, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 47, "notes": [] } }, { "stepIndex": 98, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 38, "statement": "g10l20p0 x0y0 z# b0 c0", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "offset", "result": { "status": "ok", "operation": "set-g54-offset", "sourceLineKind": "offset", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "workOffsetAfter": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "modalChange": { "coordinateSystem": "G54", "code": "G10 L20 P0" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 48, "notes": [] } }, { "stepIndex": 99, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 39, "statement": "g0 x+# y-# z#", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-to-quadrant-center", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 22, "motionType": "rapid", "feed": 2100, "startJoint": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": 20, "y": -20, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": 0, "y": 0, "z": 10 }, "endTcp": { "x": 20, "y": -20, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 49, "notes": [] } }, { "stepIndex": 100, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "statement": "o call [#][#][#][#][#][#][#][#]", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "call", "result": { "status": "ok", "operation": "call-subroutine", "sourceLineKind": "call", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 50, "notes": [] } }, { "stepIndex": 101, "sourceFile": "helix_bc.ngc", "line": 1, "statement": "; helix using switchkins (xyzbc) b,c angles", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": false, "sourceLineKind": "comment", "result": { "status": "ok", "operation": "comment", "sourceLineKind": "comment", "executed": false, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 102, "sourceFile": "helix_bc.ngc", "line": 2, "statement": "osub", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": true, "sourceLineKind": "subroutine-boundary", "result": { "status": "ok", "operation": "subroutine-enter", "sourceLineKind": "subroutine-boundary", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 103, "sourceFile": "helix_bc.ngc", "line": 3, "statement": "# = #1 (=10)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "zmax": 10 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 104, "sourceFile": "helix_bc.ngc", "line": 4, "statement": "# = #2 (= 5)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "zmin": 5 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 105, "sourceFile": "helix_bc.ngc", "line": 5, "statement": "# = #3 (=10)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "r": 10 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 106, "sourceFile": "helix_bc.ngc", "line": 6, "statement": "# = #4 (=1000)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "frate": 1000 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 107, "sourceFile": "helix_bc.ngc", "line": 7, "statement": "# = #5 (=3)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "n": 3 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 108, "sourceFile": "helix_bc.ngc", "line": 8, "statement": "# = #6 (=0 NA)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "a": 0 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 109, "sourceFile": "helix_bc.ngc", "line": 9, "statement": "# = #7 (=45)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "b": 20 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 110, "sourceFile": "helix_bc.ngc", "line": 10, "statement": "# = #8 (=20)", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": true, "sourceLineKind": "assignment", "result": { "status": "ok", "operation": "parameter-assignment", "sourceLineKind": "assignment", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "parametersChanged": { "c": 45 }, "parametersAfter": { "zmax": 10, "zmin": 5, "r": 10, "frate": 1000, "n": 3, "a": 0, "b": 20, "c": 45, "dist": 20 }, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 111, "sourceFile": "helix_bc.ngc", "line": 12, "statement": "M429 ;Identity kinematics", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-identity", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "identity", "code": "M429" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 51, "notes": [] } }, { "stepIndex": 112, "sourceFile": "helix_bc.ngc", "line": 13, "statement": "g0 x[#<_x> - #] ;adjust for radius", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-radius-adjust", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 23, "motionType": "rapid", "feed": 2100, "startJoint": { "x": 20, "y": -20, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": 10, "y": -20, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": 20, "y": -20, "z": 10 }, "endTcp": { "x": 10, "y": -20, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 52, "notes": [] } }, { "stepIndex": 113, "sourceFile": "helix_bc.ngc", "line": 14, "statement": "g10l20p0 x0y0 z# b0 c0 ;new g54", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": true, "sourceLineKind": "offset", "result": { "status": "ok", "operation": "set-g54-offset", "sourceLineKind": "offset", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "workOffsetAfter": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "modalChange": { "coordinateSystem": "G54", "code": "G10 L20 P0" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 53, "notes": [] } }, { "stepIndex": 114, "sourceFile": "helix_bc.ngc", "line": 15, "statement": "M428 ;XYZBC", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-tcp-xyzbc", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "tcp-xyzbc", "code": "M428" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 54, "notes": [] } }, { "stepIndex": 115, "sourceFile": "helix_bc.ngc", "line": 16, "statement": "g0b#c# ;exercise b,c", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-bc-orient", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 24, "motionType": "rapid", "feed": 2100, "startJoint": { "x": 10, "y": -20, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": 10, "y": -20, "z": 10, "b": 20, "c": 45 }, "startTcp": { "x": 10, "y": -20, "z": 10 }, "endTcp": { "x": 10, "y": -20, "z": 10 }, "endToolAxis": { "i": 0.24184476264797528, "j": 0.24184476264797522, "k": 0.9396926207859084 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 55, "notes": [] } }, { "stepIndex": 116, "sourceFile": "helix_bc.ngc", "line": 17, "statement": "f# g2i#z# p# ;helix", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "feed-helix", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 25, "motionType": "arc", "feed": 1000, "startJoint": { "x": 10, "y": -20, "z": 10, "b": 20, "c": 45 }, "endJoint": { "x": 10, "y": -20, "z": 5, "b": 20, "c": 45 }, "startTcp": { "x": 10, "y": -20, "z": 10 }, "endTcp": { "x": 10, "y": -20, "z": 5 }, "endToolAxis": { "i": 0.24184476264797528, "j": 0.24184476264797522, "k": 0.9396926207859084 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 1000, "actualMmPerMin": 1000, "overridePercent": 100 }, "cutting": { "active": true, "cuttingSpeedMmPerMin": 1000 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 56, "notes": [] } }, { "stepIndex": 117, "sourceFile": "helix_bc.ngc", "line": 18, "statement": "M429 ;Identity kinematics", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-identity", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "identity", "code": "M429" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 1000, "actualMmPerMin": 1000, "overridePercent": 100 }, "cutting": { "active": true, "cuttingSpeedMmPerMin": 1000 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 1000, "actualMmPerMin": 1000, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 57, "notes": [] } }, { "stepIndex": 118, "sourceFile": "helix_bc.ngc", "line": 19, "statement": "g0 x0 y0 z# b0 c0 ;return to start", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-return-to-start", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 26, "motionType": "rapid", "feed": 2100, "startJoint": { "x": 10, "y": -20, "z": 5, "b": 20, "c": 45 }, "endJoint": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": 10, "y": -20, "z": 5 }, "endTcp": { "x": 0, "y": 0, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 1000, "actualMmPerMin": 1000, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 58, "notes": [] } }, { "stepIndex": 119, "sourceFile": "helix_bc.ngc", "line": 20, "statement": "g0 x[#<_x> + #] ;adjust restore", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-radius-restore", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 27, "motionType": "rapid", "feed": 2100, "startJoint": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": 10, "y": 0, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": 0, "y": 0, "z": 10 }, "endTcp": { "x": 10, "y": 0, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 59, "notes": [] } }, { "stepIndex": 120, "sourceFile": "helix_bc.ngc", "line": 21, "statement": "M428 ;XYZBC", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-tcp-xyzbc", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "tcp-xyzbc", "code": "M428" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 60, "notes": [] } }, { "stepIndex": 121, "sourceFile": "helix_bc.ngc", "line": 22, "statement": "oendsub", "callDepth": 2, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" }, { "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 40, "call": "o" } ], "executed": true, "sourceLineKind": "subroutine-boundary", "result": { "status": "ok", "operation": "subroutine-exit", "sourceLineKind": "subroutine-boundary", "executed": true, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 122, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 42, "statement": ";final position", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": false, "sourceLineKind": "comment", "result": { "status": "ok", "operation": "comment-final-position", "sourceLineKind": "comment", "executed": false, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "tcp-xyzbc", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 123, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 43, "statement": "M429 ;Identity kinematics", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "mcode", "result": { "status": "ok", "operation": "switchkins-identity", "sourceLineKind": "mcode", "executed": true, "activeKinematicsBefore": "tcp-xyzbc", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "kinematics": "identity", "code": "M429" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 61, "notes": [] } }, { "stepIndex": 124, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 44, "statement": "g53 g0 x0y0 z# ;MACHINE coordinates", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "motion", "result": { "status": "ok", "operation": "rapid-final-machine-reset", "sourceLineKind": "motion", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": { "segmentIndex": 28, "motionType": "rapid", "feed": 2100, "startJoint": { "x": 10, "y": 0, "z": 10, "b": 0, "c": 0 }, "endJoint": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "startTcp": { "x": 10, "y": 0, "z": 10 }, "endTcp": { "x": 0, "y": 0, "z": 10 }, "endToolAxis": { "i": 0, "j": 0, "k": 1 } }, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 62, "notes": [] } }, { "stepIndex": 125, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 45, "statement": "g10l20p0 x0y0 z# ;new g54", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "offset", "result": { "status": "ok", "operation": "set-g54-offset", "sourceLineKind": "offset", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "workOffsetAfter": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "modalChange": { "coordinateSystem": "G54", "code": "G10 L20 P0" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": 63, "notes": [] } }, { "stepIndex": 126, "sourceFile": "xyzbc_switchkins_sub.ngc", "line": 47, "statement": "oendsub", "callDepth": 1, "callStack": [ { "sourceFile": "xyzbc_switchkins.ngc", "line": 2, "call": "o" } ], "executed": true, "sourceLineKind": "subroutine-boundary", "result": { "status": "ok", "operation": "subroutine-exit", "sourceLineKind": "subroutine-boundary", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": null, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } }, { "stepIndex": 127, "sourceFile": "xyzbc_switchkins.ngc", "line": 3, "statement": "m2", "callDepth": 0, "callStack": [], "executed": true, "sourceLineKind": "program-end", "result": { "status": "ok", "operation": "program-end", "sourceLineKind": "program-end", "executed": true, "activeKinematicsBefore": "identity", "activeKinematicsAfter": "identity", "parametersBefore": null, "parametersChanged": {}, "parametersAfter": null, "workOffsetBefore": null, "workOffsetAfter": null, "modalChange": { "program": "ended", "code": "M2" }, "motion": null, "machineStateBefore": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "machineStateAfter": { "spindle": { "speedRpm": 0, "direction": "stopped", "enabled": false }, "feed": { "programmedMmPerMin": 2100, "actualMmPerMin": 2100, "overridePercent": 100 }, "cutting": { "active": false, "cuttingSpeedMmPerMin": 0 }, "tool": { "id": 2, "pocket": 2, "length": 10, "diameter": 8 }, "toolChange": { "activeTool": 2, "activePocket": 2, "changed": false, "command": null }, "coolant": { "mist": false, "flood": false } }, "traceExecutionIndex": null, "notes": [] } } ], "summary": { "motionStepCount": 29, "switchkinsStepCount": 21, "parameterAssignmentStepCount": 41, "workOffsetStepCount": 9, "callStepCount": 5, "noMotionStepCount": 99, "finalJoint": { "x": 0, "y": 0, "z": 10, "b": 0, "c": 0 }, "finalKinematics": "identity" }, "semanticBoundary": "complete_gcode_execution_process_expanded_from_linuxcnc_xyzbc_trt_sources" }, "currentVelocity": 996.516, "operatorMessage": "task/HAL status tick 170", "pauseButton": { "action": "pause-resume", "paused": "false", "title": "Pause program", "ariaPressed": "false" }, "canvasDataset": { "width": 383, "height": 572, "threeToolAxis": "{\"x\":0.242,\"y\":0.242,\"z\":0.94}", "threeToolGlyphAxis": "{\"x\":0.242,\"y\":0.242,\"z\":0.94}" }, "canvasToolhead": { "x": -0.011, "y": 0.015, "z": 0.008 }, "canvasVismachPins": null, "programPaneDataset": { "region": "program", "liveSourceFile": "helix_bc.ngc", "liveSourceLine": "17", "liveSampleIndex": "484", "liveExecutedSamples": "485", "gcodeExecutionStatus": "ok", "gcodeExecutionStepCount": "128", "gcodeMotionStepCount": "29", "gcodeParameterStepCount": "41", "gcodeCallDepth": "2" }, "processMonitorDataset": { "linuxcncProcessMonitor": "", "sourceMode": "linuxcnc-task-motion-hal-wasm", "taskHalReady": "true", "activeLine": "17", "liveSourceFile": "helix_bc.ngc", "liveSourceLine": "17", "liveSampleIndex": "484" } } }