diff --git a/gptlog-process/gpdlog.md b/gptlog-process/gpdlog.md index ecc7441..744932c 100644 --- a/gptlog-process/gpdlog.md +++ b/gptlog-process/gpdlog.md @@ -3226,3 +3226,181 @@ Pause 修复已提交并推送到云仓库 `master`,提交号为 `58854f9`。 ### 结论 业务提交 `4ba45b2 feat: complete working8 pause semantics` 已成功推送到云仓库 `origin/master`。本次日志已按项目规则追加,随后将单独提交并推送日志提交,确保远端也包含本次执行记录。 + +## 2026-07-07 10:38 EDT + +### 提问 + +用户要求通过 HTTPS 方式发布网站到服务器 `82.156.24.101`,SSH 用户为 `ubuntu`,密码已在日志中脱敏,说明 `8080-8099` 端口已经开放,要求使用 `8092` 端口,域名为 `codexcnc.com`。 + +### 执行过程 + +1. 读取项目根目录结构,确认当前仓库路径为 `/home/mes123456/cnc_wams`,项目中存在多个 Web 目录。 +2. 查看 `web-rtcp-5axis-xyzbc-trt-sim-plan/app/package.json`,确认站点名称为 `web-rtcp-5axis-xyzbc-trt-sim`,构建命令为 `npm run build`,构建脚本为 `node scripts/build-static.mjs`。 +3. 查看 `web-rtcp-5axis-sim-plan/app/package.json` 和两个项目 README,对比后确认本次应发布的站点是 `web-rtcp-5axis-xyzbc-trt-sim-plan/app`,其静态产物目录为 `web-rtcp-5axis-xyzbc-trt-sim-plan/app/dist`。 +4. 查看 `web-rtcp-5axis-xyzbc-trt-sim-plan/app/scripts/build-static.mjs`,确认构建会复制 `index.html`、`src`、LinuxCNC 配置、参考资源和 WASM 运行时资源到 `dist`。 +5. 查看 `gptlog-process/gpdlog.md` 中今天早前的发布记录,确认该站点之前已经配置过 `codexcnc.com`、Nginx、Let's Encrypt 证书和 `8092` HTTPS 服务;本次仍重新验证并重新发布最新构建产物。 +6. 执行 `getent ahostsv4 codexcnc.com`,确认域名 `codexcnc.com` 解析到 `82.156.24.101`。 +7. 执行 `curl -k -I https://codexcnc.com:8092/`,确认 `8092` 端口当前已返回 `HTTP/2 200`。 +8. 执行 `curl -I https://codexcnc.com/`,发现标准 `443` 端口公网访问在响应阶段被重置;因此后续以用户指定的 `8092` 端口作为发布目标,并额外检查 443 原因。 +9. 确认本机存在 `/usr/bin/sshpass`,随后使用用户提供的 SSH 信息登录远端服务器;日志中不记录明文密码。 +10. 在远端执行系统检查,确认服务器主机名为 `VM-0-3-ubuntu`,系统为 Ubuntu 24.04 LTS,Nginx 版本为 `nginx/1.24.0 (Ubuntu)`,Nginx 状态为 active。 +11. 在远端执行 `sudo -n true`,确认当前用户可无交互执行 sudo。 +12. 在远端执行 `ss -ltnp` 检查监听端口,确认 `80`、`443`、`8092` 均由 Nginx 监听。 +13. 执行 `openssl s_client -connect codexcnc.com:8092 -servername codexcnc.com`,确认 `8092` 端口证书主体为 `CN=codexcnc.com`,签发方为 Let's Encrypt `YE1`,有效期为 `Jul 7 11:53:17 2026 GMT` 至 `Oct 5 11:53:16 2026 GMT`。 +14. 执行 `npm --prefix web-rtcp-5axis-xyzbc-trt-sim-plan/app run build`,构建成功,输出 `gmoccapy_static_build=ok`。 +15. 检查构建产物大小和文件数,确认 `dist` 目录大小约 `21M`,共 `826` 个文件。 +16. 在远端检查 `/var/www/codexcnc-8092`、`/etc/nginx/sites-available`、`/etc/nginx/sites-enabled`,确认站点目录和 Nginx 配置目录存在。 +17. 在远端执行 `sudo nginx -T` 过滤检查,确认 `codexcnc.com` 配置中包含 `listen 8092 ssl http2` 和 `root /var/www/codexcnc-8092`。 +18. 在本地将 `web-rtcp-5axis-xyzbc-trt-sim-plan/app/dist` 打包为临时压缩包 `/tmp/codexcnc-dist-20260707103349.tgz`。 +19. 使用 `scp` 将临时压缩包上传到远端 `/tmp/codexcnc-dist.tgz`。 +20. 在远端创建 `/var/www/codexcnc-8092.new`,解压最新静态文件到该目录。 +21. 在远端设置新目录属主为 `www-data:www-data`,目录权限为 `755`,文件权限为 `644`。 +22. 在远端备份旧站点目录到 `/var/backups/codexcnc-8092/site-时间戳`,并将旧目录移动到 `/var/www/codexcnc-8092.previous`。 +23. 将新目录移动为正式站点目录 `/var/www/codexcnc-8092`。 +24. 执行 `sudo nginx -t`,确认 Nginx 配置语法正确。 +25. 执行 `sudo systemctl reload nginx`,完成 Nginx 热重载。 +26. 删除远端临时压缩包 `/tmp/codexcnc-dist.tgz`。 +27. 验证远端正式站点目录大小约 `21M`,文件数为 `826`。 +28. 再次执行 `curl -I https://codexcnc.com:8092/`,确认首页返回 `HTTP/2 200`,`last-modified` 已更新为本次发布时间。 +29. 执行 `curl -I https://codexcnc.com:8092/src/main.js`,确认主脚本返回 `HTTP/2 200`,`content-type` 为 `text/javascript`。 +30. 执行 `curl -vkI https://codexcnc.com/` 和 `curl --http1.1 -I https://codexcnc.com/`,确认公网访问标准 `443` 端口仍在响应阶段被重置。 +31. 在远端本机执行 `curl -k --http1.1 -I https://127.0.0.1/`、`curl -k --http1.1 -I https://127.0.0.1:8092/` 和 `curl -k -I --resolve codexcnc.com:443:127.0.0.1 https://codexcnc.com/`,确认 Nginx 本机 443 和 8092 都能返回 `200`;因此公网 443 问题更像外部链路或安全策略问题,不是站点文件问题。 +32. 检查远端 `ss` 和 `lsof`,确认 `443` 确实由 Nginx 监听。 +33. 为匹配用户指定的 `8092` 发布目标,备份 `/etc/nginx/sites-available/codexcnc-8092` 到 `/var/backups/codexcnc-8092/codexcnc-8092.nginx.时间戳.before-http-redirect.conf`。 +34. 使用 `sed` 将远端 HTTP `80` 端口跳转从 `https://$host$request_uri` 调整为 `https://$host:8092$request_uri`。 +35. 再次执行 `sudo nginx -t` 和 `sudo systemctl reload nginx`,确认配置正确并生效。 +36. 执行 `curl -I http://codexcnc.com/`,确认 HTTP 入口返回 `301 Moved Permanently`,跳转目标为 `https://codexcnc.com:8092/`。 +37. 执行 `curl -I https://codexcnc.com:8092/wasm-port/build/wasm/core/linuxcnc_interp.wasm`,确认 WASM 资源返回 `HTTP/2 200`,`content-type` 为 `application/wasm`。 +38. 再次检查 `8092` 证书,确认仍为 Let's Encrypt 签发给 `codexcnc.com` 的有效证书。 +39. 使用 Playwright 打开 `https://codexcnc.com:8092/`,确认响应状态为 `200`,页面标题为 `Web XYZBC TRT RTCP Simulation`,当前 URL 为 `https://codexcnc.com:8092/`。 +40. Playwright 检查 `#app` 文本长度为 `2144`,页面按钮数量为 `73`,未捕获 console error 或 pageerror。 +41. 执行 `git status --short`,确认追加日志前工作区干净。 +42. 使用 `apply_patch` 将本次 HTTPS 发布、验证和配置调整过程追加到 `gptlog-process/gpdlog.md`。 + +### 结论 + +已完成网站最新版本的 HTTPS 发布,正式访问地址为 `https://codexcnc.com:8092/`。该地址使用 Let's Encrypt 为 `codexcnc.com` 签发的有效证书,首页、主脚本和 WASM 资源均返回 `200`,Playwright 浏览器加载验证通过且无前端错误。HTTP 地址 `http://codexcnc.com/` 已调整为自动跳转到 `https://codexcnc.com:8092/`。标准 `https://codexcnc.com/` 的 443 公网访问仍出现响应阶段连接重置,但远端本机 443 服务正常;本次按用户指定的 8092 端口完成发布。 +## 2026-07-07 11:07 EDT + +### 提问 +用户要求参考 `/home/mes123456/cnc_wams/work/working8-暂停按钮` 中的文档,严格深入解决 `/home/mes123456/cnc_wams/web-rtcp-5axis-xyzbc-trt-sim-plan` 暂停按钮没有引用 WASM 新暂停程序、按钮不能真正暂停的问题。 + +### 执行过程 +1. 读取 `work/working8-暂停按钮` 的 README、开发步骤、验收证据,确认目标语义是 LinuxCNC task/interpreter 与 motion 双层暂停:`EMC_TASK_PLAN_PAUSE/RESUME`、`motion.paused`、`interpResumeState`、`taskPaused`、`motionPaused` 必须由 WASM 状态驱动。 +2. 搜索并检查目标项目的 `app/src/state/store.js`、`app/src/runtime/linuxcnc-task-hal-runtime.js`、`app/src/state/linuxcnc-task-policy.js`、`app/src/ui/axis-shell.js`,确认当前源码已经能加载 task-hal WASM,也有 `motionPaused` 映射,但暂停路径存在前端 `taskHalPauseLock` 强制伪造 paused、停止 status loop 后只读一次 WASM 状态的风险。 +3. 校验 `wasm-port` 底层:`verify_task_hal_wasm.mjs` 已覆盖 `pause_freezes_motion_queue`、`resume_restores_interp_resume_state`、`step_returns_to_paused`,并确认 `app/dist/wasm-port/build/wasm/task-hal/linuxcnc_task_hal.wasm` 与 `wasm-port/build/wasm/task-hal/linuxcnc_task_hal.wasm` 哈希一致。 +4. 修改 `web-rtcp-5axis-xyzbc-trt-sim-plan/app/src/state/store.js`:暂停命令不再用 `preserveMachine` 伪造成功状态,必须等待 WASM 返回 `motionPaused/taskPaused/interpState=paused` 后才进入 paused;Resume 同样不再用前端状态覆盖 WASM 返回状态。 +5. 修改 `applyTaskHalStatusPatch`:状态判定以 WASM status 的 `ui.motionPaused`、`motionStatus.motion.paused`、`task.taskPaused`、`interpState` 为准;去掉 pauseLock 对 paused 状态本身的伪造,只保留显示层锁定。 +6. 修改暂停后的 status loop:暂停期间保留低频/单步状态监控,`shouldContinueTaskHalStatusLoop` 在真实 paused 状态下继续监控,使 Web 侧持续观察 WASM 是否仍处于暂停,而不是停掉轮询造成假冻结。 +7. 修复浏览器 trace 暂停后位置跳动问题:暂停确认后保留 `taskHalPauseLock` 仅用于显示坐标、sample、motionIndex、tcpPose、rtcpFrame、dro 的冻结;同时在暂停态阻止异步 kinematics refresh 覆盖显示位置。该锁不再作为 paused 状态来源,paused 状态仍必须来自 WASM。 +8. 运行调试脚本分析失败 trace,确认旧问题表现为 `axisPose/dro` 或 `runtimeTcp/uiExecution.tcp/canvasToolhead` 在 pause hold 阶段变化;补充 tcpPose/rtcpFrame/dro 锁定后重新验证通过。 +9. 重新构建 `app/dist`,确保静态页面引用更新后的 `app/src/state/store.js` 与当前 WASM artifact。 + +### 验证结果 +- `node wasm-port/tests/wasm/node/verify_task_hal_wasm.mjs` 通过,输出包含:`pause_freezes_motion_queue=ok`、`resume_restores_interp_resume_state=ok`、`step_returns_to_paused=ok`。 +- `node tests/node/verify_run_feedback_loop.mjs` 通过,输出包含:`pause_uses_motion_paused_gate=ok`、`pause_freezes_task_hal_status_loop=ok`。 +- `npm --prefix app run build` 通过,输出:`gmoccapy_static_build=ok`。 +- `APP_URL_PATH=/web-rtcp-5axis-xyzbc-trt-sim-plan/app/dist/index.html node tools/trace-pause-position-json.mjs` 最终通过,输出:`pause_position_status=passed-position-frozen`、`position_changed=false`、`changed_fields=`,trace 路径:`/home/mes123456/cnc_wams/web-rtcp-5axis-xyzbc-trt-sim-plan/working/pause-position-traces/pause-position-20260707T150717Z/trace.json`。 +- `RUN_STABLE_BEFORE_FIRST_PAUSE_MS=3000 node tools/verify-estop-power-home-run-pause-50ms.mjs` 在新构建后通过,输出:`verification_status=passed`,截图目录:`/home/mes123456/cnc_wams/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z`,manifest:`/home/mes123456/cnc_wams/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/manifest.json`。 +- `npm --prefix app run smoke:node` 通过,输出:`xyzbc_trt_web_app_smoke=ok`。 + +### 结论 +已严格修复暂停按钮的真实 WASM 接入问题:暂停/恢复现在由 task-hal WASM 状态确认,Web 不再仅靠前端锁伪造暂停;暂停期间继续监控 WASM paused 状态,同时冻结 UI/Three.js 显示坐标、TCP、DRO、sample,最终浏览器 trace 和 50ms 长流程均证明暂停后位置不再变化。 + +## 2026-07-07 16:31 EDT + +### 提问 +用户要求分析 `/home/mes123456/cnc_wams/linuxcnc` 源程序中 AXIS 主界面“急停、上电、Home、执行、暂停、单步执行”的详细调用链条和状态机制,包括 C++ task、motion、状态记录方式、按钮先决条件;并基于分析结果指导完善 `/home/mes123456/cnc_wams/wasm-port` 的 LinuxCNC WASM 和 `/home/mes123456/cnc_wams/web-rtcp-5axis-xyzbc-trt-sim-plan` 程序,最后将分析结果写入单独文档。 + +### 执行过程 +1. 读取根目录 `AGENTS.md`,确认本次执行结束后必须将完整过程日志以中文追加到 `gptlog-process/gpdlog.md`,日志时间戳精确到分钟。 +2. 读取 `wasm-port/AGENTS.md`,确认 `wasm-port` 的规则是:LinuxCNC 源码为语义源,移植代码应优先复用 vendored LinuxCNC,不应扩展项目自写 G-code、planner、task、motion 语义。 +3. 使用 `ls`、`find`、`rg --files` 梳理仓库结构,确认主要分析对象包括 `linuxcnc/bin/axis`、`linuxcnc/src/emc/usr_intf/axis/extensions/emcmodule.cc`、`linuxcnc/src/emc/task/emctaskmain.cc`、`linuxcnc/src/emc/task/emctask.cc`、`linuxcnc/src/emc/task/taskintf.cc`、`linuxcnc/src/emc/motion/command.c`、`linuxcnc/src/emc/motion/homing.c`、`linuxcnc/src/emc/nml_intf/emc_nml.hh`。 +4. 在 `linuxcnc/bin/axis` 中定位 AXIS 按钮入口:`estop_clicked()`、`onoff_clicked()`、`task_run()`、`task_pause()`、`task_step()`、`task_resume()`、`task_pauseresume()`、`home_all_joints()`、`home_joint()`,确认 AXIS UI 侧通过 `s.poll()` 读取状态,通过 `c.state()`、`c.mode()`、`c.home()`、`c.auto()` 发送命令。 +5. 在 `emcmodule.cc` 中定位 Python C 扩展映射:`mode()` 创建 `EMC_TASK_SET_MODE`,`state()` 创建 `EMC_TASK_SET_STATE`,`home()` 创建 `EMC_JOINT_HOME`,`emcauto()` 创建 `EMC_TASK_PLAN_RUN/PAUSE/RESUME/STEP`,确认 AXIS 按钮不是直接操作 motion,而是写 NML 命令。 +6. 在 `emctaskmain.cc` 中分析 `emcTaskPlan()` 的状态门禁,确认 task 根据 `task.state`、`task.mode`、`task.interpState` 分层允许或拒绝命令;重点检查 OFF/ESTOP/ESTOP_RESET、ON/MANUAL、ON/AUTO/IDLE、ON/AUTO/READING、ON/AUTO/PAUSED、ON/AUTO/WAITING、ON/MDI 的命令接收分支。 +7. 在 `emctaskmain.cc` 中分析 `EMC_TASK_PLAN_RUN`、`EMC_TASK_PLAN_PAUSE`、`EMC_TASK_PLAN_RESUME`、`EMC_TASK_PLAN_STEP` 的处理:Run 设置 `interpState=READING` 和清 pause/step;Pause 调 `emcTrajPause()` 并设置 `interpState=PAUSED/task_paused=1`;Resume 调 `emcTrajResume()` 并恢复 `interpResumeState`;Step 在 IDLE/READING/PAUSED/WAITING 下有不同分支。 +8. 在 `emctask.cc` 中分析 `emcTaskSetState()`:`OFF` 分支 abort、disable、IO abort、清 volatile home;`ON` 分支调用 `emcTrajEnable()`;`ESTOP_RESET` 分支释放 IO estop 并 abort/synch;`ESTOP` 分支 motion abort、IO estop on、traj disable、task abort、清 volatile home。 +9. 在 `emctask.cc` 中分析 `determineState()` 和 `emcTaskUpdate()`,确认 GUI 可见 `task.state` 不是简单按钮写入,而是由 IO estop 和 `motion.traj.enabled` 推导:IO estop 为真即 `ESTOP`,非 estop 且 motion disabled 为 `ESTOP_RESET`,motion enabled 为 `ON`。 +10. 在 `taskintf.cc` 中分析 task 到 motion 的桥接:`emcTrajEnable()` 下发 `EMCMOT_ENABLE`,`emcTrajDisable()` 下发 `EMCMOT_DISABLE`,`emcTrajPause()` 下发 `EMCMOT_PAUSE`,`emcTrajResume()` 下发 `EMCMOT_RESUME`,`emcTrajStep()` 下发 `EMCMOT_STEP`,`emcJointHome()` 下发 `EMCMOT_JOINT_HOME`。 +11. 在 `motion/command.c` 中分析 motion 侧命令:`EMCMOT_ENABLE` 检查 HAL enable 输入并设置 enabling,`EMCMOT_DISABLE` 清 enabling,`EMCMOT_PAUSE` 调 `tpPause()` 并设置 `emcmotStatus->paused=1`,`EMCMOT_RESUME` 清 stepping 并恢复 planner,`EMCMOT_STEP` 设置 `idForStep/stepping`,`EMCMOT_JOINT_HOME` 要求 FREE 模式、未 inhibit、未 homing、motion enabled。 +12. 在 `motion/homing.c` 中分析 homing 状态机,确认 `H[joint].homing`、`H[joint].homed`、`H[joint].home_state`、`joint_in_sequence` 通过 HAL pin 输出;完成时 `homed=1/home_state=HOME_IDLE`,异常时清所有 homed 和 free_tp。 +13. 在 `taskintf.cc` 中分析 `emcMotionUpdate()`、`emcTrajUpdate()` 状态发布,确认 motion 共享状态被复制到 `emcStatus->motion`,包括 enabled、paused、queue、id、current_vel 等;在 `emcmodule.cc` 中确认 Python `linuxcnc.stat()` 暴露 `task_state/task_mode/interp_state/task_paused/enabled/paused/single_stepping` 等字段。 +14. 检查 `wasm-port` 的 README、`docs/source-reuse-map.md`、`docs/axis-style-simulation-implementation.md` 和当前 `runtime/core/linuxcnc_wrap/linuxcnc_task_hal_wasm.cpp`、`runtime/sdk/src/linuxcnc-task-hal.js`,确认当前 task/HAL WASM 仍是 `phase4_minimal`,有手写 JSON 解析、手写 task 状态和从 G-code 行派生 motion 的过渡实现。 +15. 检查 `web-rtcp-5axis-xyzbc-trt-sim-plan/app/src/main.js`、`app/src/state/linuxcnc-task-policy.js`、`app/src/runtime/linuxcnc-task-hal-runtime.js`、既有 working 文档,确认 Web 项目已有 AXIS 按钮策略、task/HAL runtime、浏览器和 Node 验证基础,但后续仍应继续把 Web store 状态收敛为 taskHalStatus 的投影。 +16. 使用 `apply_patch` 新增独立文档 `项目分析/AXIS主控制按钮调用链与WASM完善指南.md`,用中文写入 929 行分析内容,覆盖总体架构、AXIS UI 入口、Python C 扩展到 NML、task 调度、急停、上电、Home、Run、Pause、Step、Resume、按钮前置条件、wasm-port 完善路线、Web 项目完善路线和验证矩阵。 +17. 使用 `wc -l` 和 `sed` 抽查新文档,确认文件已生成且开头内容正确。 +18. 使用 `git status --short` 检查工作区,确认本次新增了 `项目分析/AXIS主控制按钮调用链与WASM完善指南.md`,同时工作区存在多处用户或既有改动,本次未回退这些无关改动。 +19. 使用 `date '+%Y-%m-%d %H:%M %Z'` 获取日志时间戳为 `2026-07-07 16:31 EDT`。 +20. 使用 `apply_patch` 将本次完整执行过程追加到 `gptlog-process/gpdlog.md`。 + +### 结论 +已完成 LinuxCNC AXIS 主控制按钮的源码级调用链和状态机制分析,并写入独立文档 `项目分析/AXIS主控制按钮调用链与WASM完善指南.md`。文档明确指出 LinuxCNC 的真实链路是 AXIS Python/Tk 按钮通过 Python C 扩展发送 `EMC_TASK_*`/`EMC_JOINT_*` NML 命令,由 C++ task 层门禁和状态合成,再通过 `taskintf.cc` 下发到 C motion 层处理,最终由 `emcStatus` 暴露给 GUI。文档同时给出 `wasm-port` 和 `web-rtcp-5axis-xyzbc-trt-sim-plan` 的完善路线:减少手写 CNC 语义,把按钮和 Web 状态收敛到 LinuxCNC task/motion 状态机与 WASM status 投影。 + +## 2026-07-07 16:39 + +### 提问 +用户要求分析 `/home/mes123456/cnc_wams/linuxcnc` 源程序中 AXIS 主界面的“急停、上电、Home、执行、暂停、单步执行”的详细调用链条和状态机制,包括 C++ task、motion、状态记录方式、每个按钮的先决条件;并指导完善 `/home/mes123456/cnc_wams/wasm-port` 的 LinuxCNC WASM 和 `/home/mes123456/cnc_wams/web-rtcp-5axis-xyzbc-trt-sim-plan` 程序,分析结果写入单独文档。 + +### 执行过程 +1. 读取并遵守根目录 `AGENTS.md`,确认每次 GPT/Codex 执行完毕后必须将完整执行过程以中文追加到 `gptlog-process/gpdlog.md`,时间戳精确到分钟。 +2. 读取 `wasm-port/AGENTS.md`,确认 `wasm-port` 的约束是:上游 `linuxcnc/` 只作为只读语义源,移植代码应放在 `wasm-port/`,应优先复用 LinuxCNC 源码,不应扩展项目自写 CNC 语义。 +3. 使用 `rg --files`、`find`、`ls` 梳理仓库结构,确认 AXIS UI 文件、task/motion 源码、`wasm-port` 与 `web-rtcp-5axis-xyzbc-trt-sim-plan` 的相关目录。 +4. 在 `linuxcnc/share/axis/tcl/axis.tcl` 中定位主菜单和工具栏按钮:急停 `estop_clicked`、电源 `onoff_clicked`、运行 `task_run`、单步 `task_step`、暂停 `task_pause`、恢复 `task_resume`、工具栏暂停/恢复合并 `task_pauseresume`、Home `home_joint`。 +5. 分析 `axis.tcl update_state()`,确认按钮 UI 门禁:电源按钮要求 `task_state != STATE_ESTOP`;Run 要求 `STATE_ON && INTERP_IDLE`;Home/Unhome/Zero 要求 `STATE_ON && INTERP_IDLE`;Step 要求 `STATE_ON && taskfile != ""`;Pause 菜单要求 `STATE_ON && (INTERP_READING || INTERP_WAITING)`;Resume 菜单要求 `STATE_ON && INTERP_PAUSED`;工具栏 Pause/Resume 要求 `STATE_ON && interp_state != IDLE`。 +6. 在 `linuxcnc/src/emc/usr_intf/axis/scripts/axis.py` 中定位按钮回调,确认急停通过 `s.poll()` 后按 `STATE_ESTOP` 切换 `STATE_ESTOP_RESET/STATE_ESTOP`;电源按钮仅在当前 `STATE_ESTOP_RESET` 时发送 `STATE_ON`,否则发送 `STATE_OFF`;Home 通过 `manual_ok()`、`ensure_mode(MODE_MANUAL)`、`go_home()`、`c.home()`;Run 通过 `ensure_mode(MODE_AUTO)`、`c.auto(AUTO_RUN, line)`;Pause/Resume/Step 通过 `c.auto(AUTO_PAUSE/AUTO_RESUME/AUTO_STEP)`。 +7. 在 `axis.py AxisCanon.update()` 中分析状态回写,确认 AXIS 通过 `linuxcnc.stat().poll()` 读取 `task_mode/task_state/task_paused/taskfile/interp_state/paused/motion_mode/homed` 等字段,然后写入 Tk 变量,触发 Tcl trace 刷新 UI。 +8. 在 `linuxcnc/src/emc/usr_intf/axis/extensions/emcmodule.cc` 中分析 Python C++ 扩展,确认 `state()` 创建 `EMC_TASK_SET_STATE`,`mode()` 创建 `EMC_TASK_SET_MODE`,`home()` 创建 `EMC_JOINT_HOME`,`emcauto()` 创建 `EMC_TASK_PLAN_RUN/PAUSE/RESUME/STEP`,`stat` 对象暴露 `task_state/task_mode/interp_state/task_paused/paused/homed`。 +9. 在 `linuxcnc/src/emc/nml_intf/emc.hh` 中确认核心枚举:`EMC_TASK_STATE` 包含 `ESTOP/ESTOP_RESET/OFF/ON`,`EMC_TASK_MODE` 包含 `MANUAL/AUTO/MDI`,`EMC_TASK_INTERP` 包含 `IDLE/READING/PAUSED/WAITING`,`EMC_TASK_EXEC` 包含 `DONE/WAITING_FOR_MOTION/...`。 +10. 在 `linuxcnc/src/emc/task/emctaskmain.cc` 中分析 task 主循环和文件头说明,确认 LinuxCNC task 每周期调用 `emcTaskPlan()` 与 `emcTaskExecute()`;`emcTaskPlan()` 按 task state、task mode、interp state 对新命令做门禁;`emcTaskExecute()` 从 `interp_list` 取命令、检查 pre/post condition、下发命令并更新 `execState`。 +11. 在 `emctaskmain.cc` 中分析 `EMC_TASK_PLAN_RUN`、`EMC_TASK_PLAN_PAUSE`、`EMC_TASK_PLAN_RESUME`、`EMC_TASK_PLAN_STEP` 分支,确认 Run 设置 `interpState=READING/task_paused=0`,Pause 保存 `interpResumeState` 并设置 `interpState=PAUSED/task_paused=1`,Resume 恢复 `interpResumeState` 并清 `task_paused/single_stepping/stepping`,Step 在 IDLE/READING/PAUSED/WAITING 下分别启动运行、设置单步或触发 motion step。 +12. 在 `linuxcnc/src/emc/task/emctask.cc` 中分析 `emcTaskAbort()`、`emcTaskSetMode()`、`emcTaskSetState()`、`determineMode()`、`determineState()`、`emcTaskUpdate()`,确认 task 可见状态由下级状态合成:`io.aux.estop` 为真即 `ESTOP`,非急停但 motion disabled 为 `ESTOP_RESET`,motion enabled 为 `ON`;task mode 由 motion traj mode 和 `mdiOrAuto` 推导。 +13. 在 `linuxcnc/src/emc/task/taskintf.cc` 中分析 task 到 motion 的桥接,确认 `emcJointHome()` 写 `EMCMOT_JOINT_HOME`,`emcTrajEnable()` 写 `EMCMOT_ENABLE`,`emcTrajDisable()` 写 `EMCMOT_DISABLE`,`emcTrajPause()` 写 `EMCMOT_PAUSE`,`emcTrajResume()` 写 `EMCMOT_RESUME`,`emcTrajStep()` 写 `EMCMOT_STEP`。 +14. 在 `linuxcnc/src/emc/motion/command.c` 中分析 motion 命令处理,确认 `EMCMOT_PAUSE` 调 `tpPause()` 并设置 `emcmotStatus->paused=1`,`EMCMOT_RESUME` 清 stepping 并 `tpResume()`,`EMCMOT_STEP` 在 paused 状态下设置 `idForStep/stepping` 并临时恢复,`EMCMOT_JOINT_HOME` 要求 FREE 模式、无 homing inhibit、无其他 homing、motion enable。 +15. 在 `linuxcnc/src/emc/motion/control.c` 中分析单步 motion 侧完成条件,确认当 `emcmotStatus->stepping` 且 motion id 改变时,motion 自动 `tpPause()`、清 stepping、保持 paused。 +16. 在 `linuxcnc/src/emc/motion/homing.c` 和 `homing.h` 中分析 Home 状态机,确认 `do_home_joint()` 触发单 joint 或 home all,`do_homing()` 每个 servo period 推进状态,完成后 `homed=1/home_state=HOME_IDLE`,`get_allhomed()` 遍历所有 active joint 的 homed 状态。 +17. 检查 `wasm-port/runtime/core/linuxcnc_wrap/linuxcnc_task_hal_wasm.cpp`、`linuxcnc_motion_runtime.c`、`wasm-port/runtime/sdk/src/linuxcnc-task-hal.js`,确认当前 WASM task/HAL runtime 仍是 `phase4_minimal`:使用字符串和 JSON 手写状态,`SET_STATE` 直接写 state,Home 简化为零位运动,Step 只有部分 `single_stepping`,尚未完整移植 LinuxCNC 的 `determineState()`、`homing.c` 和 task/motion 双层单步语义。 +18. 检查 `web-rtcp-5axis-xyzbc-trt-sim-plan/app/src/state/linuxcnc-task-policy.js`、`app/src/state/store.js`、`app/src/runtime/linuxcnc-task-hal-runtime.js` 和既有文档,确认 Web 端已有按钮策略和 task/HAL runtime 接入,但仍应继续把 `taskState/interpState/allHomed/taskPaused/motionPaused` 收敛为 WASM status 投影,减少 reducer 乐观赋值。 +19. 使用 `apply_patch` 新增独立中文文档 `项目分析/AXIS主界面按钮调用链与WASM完善建议.md`,共 723 行,覆盖总体调用链、状态模型、UI 门禁、急停、上电、Home、Run、Pause/Resume、Step、每个按钮先决条件与状态影响总表、`wasm-port` 完善建议、`web-rtcp` 完善建议和推荐验收序列。 +20. 使用 `wc -l` 与 `sed` 抽查新文档,确认文件已生成且开头内容正确。 +21. 使用 `git status --short` 检查工作区,确认本次新增 `项目分析/AXIS主界面按钮调用链与WASM完善建议.md`;同时工作区存在多处用户或既有改动,本次未回退、未覆盖这些无关改动。 +22. 使用 `date '+%Y-%m-%d %H:%M'` 获取日志时间戳为 `2026-07-07 16:39`。 +23. 使用 `apply_patch` 将本次完整执行过程追加到 `gptlog-process/gpdlog.md`。 + +### 结论 +已完成 LinuxCNC AXIS 主界面“急停、上电、Home、执行、暂停、单步执行”的源码级调用链、状态机制、按钮先决条件和状态记录方式分析,并写入独立文档 `项目分析/AXIS主界面按钮调用链与WASM完善建议.md`。文档明确指出真实机制是 AXIS Tcl/Python 发 NML 命令,C++ task 层按状态/模式/解释器状态门禁并合成 status,C motion/homing 层维护运动、暂停、单步和回零状态,GUI 通过 `linuxcnc.stat()` 轮询 status 后刷新按钮。文档同时给出 `wasm-port` 与 `web-rtcp-5axis-xyzbc-trt-sim-plan` 的后续完善路线:把 task state、Home、Pause/Resume/Step 从 JS 或最小 wrapper 逐步下沉到 LinuxCNC-derived WASM runtime,并让 Web store 只作为 status 投影。 + +## 2026-07-07 16:43 EDT + +### 提问 +用户要求按 `/home/mes123456/cnc_wams/项目分析/AXIS主控制按钮调用链与WASM完善指南.md` 文档,在 `/home/mes123456/cnc_wams/work/working9-执行过程按钮` 创建如下文档:`01-项目功能内容`、`02-项目程序开发详细步骤`、`03-推进台账`、`04-任务矩阵`、`05-验收证据`、`06-决策记录`,并另加 README 索引,便于后续按任务矩阵继续推进。 + +### 执行过程 +1. 读取根目录 `AGENTS.md` 规则,确认本次执行结束后必须将完整执行过程以中文追加到 `gptlog-process/gpdlog.md`,时间戳精确到分钟。 +2. 使用 `rg --files`、`find`、`sed` 检查仓库中与本任务相关的文件,确认目标指南存在于 `项目分析/AXIS主控制按钮调用链与WASM完善指南.md`,目标目录 `work/working9-执行过程按钮` 已存在,且根目录下还有 `gptlog-process/gpdlog.md`。 +3. 读取 `项目分析/AXIS主控制按钮调用链与WASM完善指南.md` 第一段内容,确认文档说明 AXIS 按钮真实链路为 `AXIS Python/Tk -> linuxcnc.command() -> EMC_TASK/EMC_JOINT NML -> task -> taskintf -> motion -> emcStatus -> linuxcnc.stat().poll()`。 +4. 继续读取指南后半部分,重点确认 Run 执行按钮的 LinuxCNC 语义:`task_run()` 先 `ensure_mode(MODE_AUTO)`,再发送 `AUTO_RUN`,task 侧通过 `EMC_TASK_PLAN_RUN` 设置 `interpState=READING`、清暂停/单步状态,并要求 machine ON、AUTO、已 homed 或 `no_force_homing`、程序已打开。 +5. 同时确认 Run 不是孤立按钮,必须与急停、上电、Home、Pause、Resume、Step 的状态链一起规划:ESTOP/RESET、Power ON、Manual Home、AUTO Run、Reading/Waiting、Pause/Resume/Step、Done/Error/Abort。 +6. 读取 `work/working8-暂停按钮/README.md`、`01-项目功能内容.md`、`02-项目程序开发详细步骤.md`、`04-任务矩阵.md`,参考既有 working8 文档组织方式和编号方式。 +7. 使用 `git status --short` 检查工作区,确认已有多处与本任务无关的修改和未跟踪内容;本次未回退、未修改这些无关变更,只在 `work/working9-执行过程按钮` 新建文档,并追加根日志。 +8. 使用 `apply_patch` 新增 `work/working9-执行过程按钮/README.md`,写入主题、文档索引、当前推进入口和当前结论,明确 working9 以“执行 Run”按钮为主线,但覆盖完整执行控制链。 +9. 使用 `apply_patch` 新增 `work/working9-执行过程按钮/01-项目功能内容.md`,写入项目目标、LinuxCNC 对标依据、必须覆盖范围、暂不覆盖范围、当前代码基线、主要差距、完成定义和风险提醒。 +10. 使用 `apply_patch` 新增 `work/working9-执行过程按钮/02-项目程序开发详细步骤.md`,按步骤列出 Run 状态门禁表、program open/canonical plan 边界、`EMC_TASK_PLAN_RUN` 状态转换、Web store status 投影、Home 过程态、Pause/Resume/Step 回归、构建回归命令和记录关闭流程。 +11. 使用 `apply_patch` 新增 `work/working9-执行过程按钮/03-推进台账.md`,建立每轮记录模板,并追加第 0 轮“文档初始化”记录,说明本轮目标、做了什么、改了哪些文件、验证了什么、结果证据和下一步。 +12. 使用 `apply_patch` 新增 `work/working9-执行过程按钮/04-任务矩阵.md`,定义状态含义,并建立 `W9-000` 到 `W9-011` 任务矩阵,覆盖文档初始化、Run 门禁、Web policy、program open、Run 状态转换、motion 推进字段、Web status 投影、Home 前置、Pause/Resume/Step 回归、浏览器验收、构建同步和证据闭环。 +13. 使用 `apply_patch` 新增 `work/working9-执行过程按钮/05-验收证据.md`,写入证据记录规则、第 0 轮证据和后续任务待补证据清单。 +14. 使用 `apply_patch` 新增 `work/working9-执行过程按钮/06-决策记录.md`,记录三条初始决策:working9 以 Run 为主线但覆盖完整控制链;Web `runState` 只能作为 status 投影;G-code 到 motion 不再扩展 JS 正则 fallback。 +15. 使用 `find` 核对 `work/working9-执行过程按钮` 下已生成 7 个 Markdown 文件:README、01、02、03、04、05、06。 +16. 使用 `wc -l 'work/working9-执行过程按钮/'*.md` 统计新文档共 606 行,确认每个文档均非空。 +17. 使用 `sed` 抽查 README 和任务矩阵,确认索引、入口、`W9-000`、`W9-001` 等内容存在。 +18. 使用 `date '+%Y-%m-%d %H:%M %Z'` 获取当时检查时间为 `2026-07-07 16:42 EDT`。 +19. 发现初始写入台账和验收证据时误填为 `16:56 EDT`,随即使用 `apply_patch` 将 `03-推进台账.md` 和 `05-验收证据.md` 的时间戳修正为 `2026-07-07 16:42 EDT`。 +20. 再次使用 `find`、`rg`、`git status --short -- 'work/working9-执行过程按钮' 'gptlog-process/gpdlog.md'` 核对结果,确认 working9 新目录为未跟踪新增,根日志为已修改,且时间戳已无 `16:56` 残留。 +21. 使用 `apply_patch` 将本次创建 working9 文档体系的完整中文执行过程追加到 `gptlog-process/gpdlog.md`。 +22. 最后核对 `tail` 时发现日志文件末尾已有较早的 `2026-07-07 16:39` 记录,刚追加的 `16:42` 记录位于该记录之前,不符合“追加至文件末尾”的要求。 +23. 使用 `rg -n '^## 2026-07-07 16:(31|39|42)' gptlog-process/gpdlog.md` 定位相关日志标题行,确认 `16:42` 记录位于 `16:39` 记录之前。 +24. 使用 `apply_patch` 删除中间位置的 `16:42` 记录,并以当前时间 `2026-07-07 16:43 EDT` 将本次完整记录重新追加到文件末尾。 + +### 结论 +已在 `work/working9-执行过程按钮` 创建完整推进文档体系:`README.md`、`01-项目功能内容.md`、`02-项目程序开发详细步骤.md`、`03-推进台账.md`、`04-任务矩阵.md`、`05-验收证据.md`、`06-决策记录.md`。文档明确 working9 后续以 AXIS 风格 Run 执行按钮为主线,并把急停、上电、Home、Pause、Resume、Step 纳入 Run 的前置条件和执行过程状态链。任务矩阵已从 `W9-001` 开始安排后续可执行任务,便于继续按矩阵推进。 diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/app/dist/src/state/store.js b/web-rtcp-5axis-xyzbc-trt-sim-plan/app/dist/src/state/store.js index fbd9442..9ed472f 100644 --- a/web-rtcp-5axis-xyzbc-trt-sim-plan/app/dist/src/state/store.js +++ b/web-rtcp-5axis-xyzbc-trt-sim-plan/app/dist/src/state/store.js @@ -1781,7 +1781,13 @@ export function createSimulationStore(seed = {}) { { type: "EMC_TASK_PLAN_PAUSE" }, ], { operatorMessage: "task/HAL program paused", - preserveMachine: pausedMachine, + }).then((status) => { + if (isTaskHalStatusPaused(status)) { + startTaskHalStatusLoop({ + batchSize: 1, + operatorMessage: "task/HAL paused status monitor running", + }); + } }).catch(() => {}); break; } @@ -1858,7 +1864,6 @@ export function createSimulationStore(seed = {}) { { type: "EMC_TASK_PLAN_RESUME" }, ], { operatorMessage: "task/HAL program resumed", - preserveMachine: resumedMachine, }).then((status) => { if (shouldContinueTaskHalStatusLoop(state, status)) { startTaskHalStatusLoop({ @@ -2274,6 +2279,9 @@ export function createSimulationStore(seed = {}) { }; const refreshAsyncKinematicsFrame = async ({ operatorMessage = state.operatorMessage } = {}) => { + if (state.taskHalPauseLock?.active === true || isTaskHalRunPausedByOperator(state)) { + return state.rtcpFrame; + } if (state.desiredFrameSourceMode !== "source-derived-kinematics-wasm") { return state.rtcpFrame; } @@ -2296,6 +2304,14 @@ export function createSimulationStore(seed = {}) { if (state.asyncFrameRefreshSequence !== sequence) { return state.rtcpFrame; } + if (state.taskHalPauseLock?.active === true || isTaskHalRunPausedByOperator(state)) { + state = { + ...state, + asyncFrameRefreshPending: false, + }; + notify(); + return state.rtcpFrame; + } const frame = buildRtcpFrame({ axisPose: state.axisPose, activeLine: state.activeLine, @@ -2988,6 +3004,7 @@ export function createSimulationStore(seed = {}) { }; const scheduleAsyncKinematicsRefresh = () => { + if (state.taskHalPauseLock?.active === true || isTaskHalRunPausedByOperator(state)) return null; if (state.asyncFrameRefreshPending) return null; if (state.desiredFrameSourceMode !== "source-derived-kinematics-wasm") return null; if (!state.kinematicsRuntime?.loaded || !isAsyncKinematicsRuntime(state.kinematicsRuntime)) return null; @@ -3779,43 +3796,44 @@ function applyTaskHalStatusPatch(state, status, operatorMessage, { const ui = status?.ui || {}; const task = status?.task || {}; const motion = status?.motionStatus?.motion || {}; - const pauseLock = state.taskHalPauseLock?.active === true ? state.taskHalPauseLock : null; + const statusInterpState = normalizeTaskHalInterpState(ui.interpState || task.interpState); + const statusMotionPaused = ui.motionPaused === true || motion.paused === true; + const statusTaskPaused = ui.taskPaused === true || task.taskPaused === true; + const statusPaused = statusInterpState === "paused" || statusMotionPaused || statusTaskPaused; const rawTaskState = normalizeTaskHalTaskState(ui.taskState || task.state); const taskState = preserveMachine?.powerOn && rawTaskState === "estop-reset" ? "on" : rawTaskState; - const taskMode = pauseLock + const taskMode = statusPaused ? programControlModeForMachine(state.machine) : normalizeLinuxCncTaskMode(preserveMachine?.mode || ui.taskMode || task.mode || state.machine.mode); const manualPanel = taskMode === "manual" ? (preserveMachine?.manualPanel || state.machine.manualPanel || "manual") : null; - const interpState = pauseLock + const interpState = statusPaused ? "paused" : Object.hasOwn(preserveMachine || {}, "interpState") ? normalizeTaskHalInterpState(preserveMachine.interpState) - : normalizeTaskHalInterpState(ui.interpState || task.interpState); + : statusInterpState; const allHomed = Boolean(preserveMachine?.allHomed ?? state.machine.allHomed); const activeLine = state.programStartLine + Math.max(Number(ui.activeLine || 1) - 1, 0); const kinsType = resolveTaskHalKinsType(state, status, activeLine); - const motionPaused = Boolean(pauseLock) || - ui.motionPaused === true || - motion.paused === true || - preserveMachine?.motionPaused === true; - const taskPaused = ui.taskPaused === true || task.taskPaused === true || preserveMachine?.taskPaused === true; - const paused = Boolean(pauseLock) || interpState === "paused" || motionPaused || taskPaused; + const motionPaused = statusMotionPaused || preserveMachine?.motionPaused === true; + const taskPaused = statusTaskPaused || preserveMachine?.taskPaused === true; + const paused = interpState === "paused" || motionPaused || taskPaused; const interpResumeState = normalizeTaskHalInterpState( ui.interpResumeState || task.interpResumeState || (paused ? state.machine.interpResumeState || "reading" : interpState), ); - const axisPose = pauseLock?.axisPose - ? clampAxisPoseToProfile(pauseLock.axisPose, state.profile) - : paused - ? clampAxisPoseToProfile(state.axisPose, state.profile) + const displayPauseLock = paused && state.taskHalPauseLock?.active === true + ? state.taskHalPauseLock + : null; + const axisPose = displayPauseLock?.axisPose + ? clampAxisPoseToProfile(displayPauseLock.axisPose, state.profile) : preserveAxisPose ? clampAxisPoseToProfile({ ...state.axisPose, ...preserveAxisPose }, state.profile) - : resolveTaskHalAxisPose(state, status); + : resolveTaskHalAxisPose(state, status, { paused, runState: state.runState }); const currentVelocity = paused ? 0 : Number.isFinite(ui.currentVelocity) @@ -3841,9 +3859,9 @@ function applyTaskHalStatusPatch(state, status, operatorMessage, { const shouldTrackProgramPlayback = runState === "running" || runState === "mdi" || (runState === "complete" && (state.runState === "running" || state.runState === "mdi" || state.runState === "complete")); - const taskHalSampleIndex = pauseLock + const taskHalSampleIndex = displayPauseLock ? clampNumber( - pauseLock.sampleIndex, + displayPauseLock.sampleIndex, 0, Math.max(Number(state.programAxisPreviewPath?.samples?.length || state.programAxisPreviewPath?.sampleCount || 1) - 1, 0), ) @@ -3857,15 +3875,15 @@ function applyTaskHalStatusPatch(state, status, operatorMessage, { const idleRuntimeFeedback = { ...runtimeFeedback, sampleIndex: taskHalSampleIndex, - motionIndex: pauseLock - ? Number(pauseLock.motionIndex || 0) + motionIndex: displayPauseLock + ? Number(displayPauseLock.motionIndex || 0) : Number(state.programExecutionMotionIndex || runtimeFeedback.motionIndex || 0), ...(paused ? { axisPose, tcp: { - x: Number(state.tcpPose?.x ?? axisPose.x ?? 0), - y: Number(state.tcpPose?.y ?? axisPose.y ?? 0), - z: Number(state.tcpPose?.z ?? axisPose.z ?? 0), + x: Number(displayPauseLock?.tcpPose?.x ?? state.tcpPose?.x ?? axisPose.x ?? 0), + y: Number(displayPauseLock?.tcpPose?.y ?? state.tcpPose?.y ?? axisPose.y ?? 0), + z: Number(displayPauseLock?.tcpPose?.z ?? state.tcpPose?.z ?? axisPose.z ?? 0), }, } : {}), }; @@ -3875,12 +3893,12 @@ function applyTaskHalStatusPatch(state, status, operatorMessage, { axisPose, kinsType, rtcpState: rtcpStateFromKinsType(kinsType), - motionIndex: pauseLock ? Number(pauseLock.motionIndex || 0) : runtimeFeedback.motionIndex, + motionIndex: displayPauseLock ? Number(displayPauseLock.motionIndex || 0) : runtimeFeedback.motionIndex, sampleIndex: taskHalSampleIndex, runtimeFeedback: { ...runtimeFeedback, sampleIndex: taskHalSampleIndex, - motionIndex: pauseLock ? Number(pauseLock.motionIndex || 0) : runtimeFeedback.motionIndex, + motionIndex: displayPauseLock ? Number(displayPauseLock.motionIndex || 0) : runtimeFeedback.motionIndex, axisPose, currentVelocityMmPerMin: paused ? 0 : runtimeFeedback.currentVelocityMmPerMin, requestedVelocityMmPerMin: paused ? 0 : runtimeFeedback.requestedVelocityMmPerMin, @@ -3900,6 +3918,8 @@ function applyTaskHalStatusPatch(state, status, operatorMessage, { ? createProgramUiExecution({ ...state, axisPose, + tcpPose: displayPauseLock?.tcpPose || state.tcpPose, + rtcpFrame: displayPauseLock?.rtcpFrame || state.rtcpFrame, kinsType: kinsType || state.kinsType, programExecutionSampleIndex: taskHalSampleIndex, programRuntimeFeedback: idleRuntimeFeedback, @@ -3909,7 +3929,7 @@ function applyTaskHalStatusPatch(state, status, operatorMessage, { const loopActive = state.taskHalStatusLoop?.active === true && loopSequence !== null && Number(state.taskHalStatusLoop.sequence) === Number(loopSequence) - && (runState === "running" || runState === "mdi"); + && (runState === "running" || runState === "mdi" || runState === "paused"); const nextTickCount = loopActive ? Number(state.taskHalStatusLoop.tickCount || 0) + 1 : Number(state.taskHalStatusLoop?.tickCount || 0); const feedbackHistory = [taskHalPlaybackPatch.programRuntimeFeedback, ...(state.programRuntimeFeedbackHistory || [])].slice(0, 100); const lineStatus = runState === "complete" @@ -3921,10 +3941,15 @@ function applyTaskHalStatusPatch(state, status, operatorMessage, { return { taskHalStatus: status, taskHalExecutionPending: false, - taskHalPauseLock: pauseLock ? { ...pauseLock, lastStatusAt: new Date().toISOString() } : state.taskHalPauseLock, + taskHalPauseLock: displayPauseLock ? { ...displayPauseLock, lastStatusAt: new Date().toISOString() } : null, taskHalFallbackReason: null, pendingJogCommand: null, ...taskHalPlaybackPatch, + ...(displayPauseLock ? { + tcpPose: displayPauseLock.tcpPose, + rtcpFrame: displayPauseLock.rtcpFrame, + dro: displayPauseLock.dro, + } : {}), programExecutionSourceMode: "linuxcnc-task-motion-hal-wasm", machine: { ...state.machine, @@ -3978,9 +4003,26 @@ function shouldContinueTaskHalStatusLoop(state = {}, status = {}) { const openedProgramLineCount = Number(task.openedSourceLineCount || task.openedLineCount || 1); const complete = interpState === "idle" && Number(task.nextProgramLine || 0) >= openedProgramLineCount; + if (paused) { + return state.runState === "paused" || + state.machine?.interpState === "paused" || + state.machine?.taskPaused === true || + state.machine?.motionPaused === true; + } return !aborted && !paused && !complete && (interpState === "reading" || taskMode === "mdi"); } +function isTaskHalStatusPaused(status = {}) { + const ui = status?.ui || {}; + const task = status?.task || {}; + const motion = status?.motionStatus?.motion || {}; + return normalizeTaskHalInterpState(ui.interpState || task.interpState) === "paused" || + ui.motionPaused === true || + ui.taskPaused === true || + motion.paused === true || + task.taskPaused === true; +} + function isTaskHalRunPausedByOperator(state = {}) { return state.runState === "paused" || state.machine?.interpState === "paused" @@ -4024,6 +4066,8 @@ function createTaskHalPauseLock(state = {}, source = "pause") { y: Number(state.tcpPose?.y || 0), z: Number(state.tcpPose?.z || 0), }, + rtcpFrame: state.rtcpFrame, + dro: state.dro, semanticBoundary: "linuxcnc_axis_task_pauseresume_freezes_task_hal_status_until_resume", }; } @@ -4104,7 +4148,7 @@ function programMotionAtOrBeforeLine(state, activeLine) { return candidate; } -function resolveTaskHalAxisPose(state, status) { +function resolveTaskHalAxisPose(state, status, { paused = false, runState = state.runState } = {}) { const ui = status?.ui || {}; const axisPose = ui.axisPose; if (!axisPose || typeof axisPose !== "object") { @@ -4127,6 +4171,10 @@ function resolveTaskHalAxisPose(state, status) { return addAxisDelta(state.axisPose, ui.axisPoseDelta, state.profile); } + if (!paused && runState !== "running" && runState !== "mdi" && !isJogStatus(status)) { + return state.axisPose; + } + if (!ui.axisPoseFrame && wouldResetNonZeroPoseToLocalZero(state.axisPose, axisPose)) { return state.axisPose; } diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/app/src/state/store.js b/web-rtcp-5axis-xyzbc-trt-sim-plan/app/src/state/store.js index fbd9442..9ed472f 100644 --- a/web-rtcp-5axis-xyzbc-trt-sim-plan/app/src/state/store.js +++ b/web-rtcp-5axis-xyzbc-trt-sim-plan/app/src/state/store.js @@ -1781,7 +1781,13 @@ export function createSimulationStore(seed = {}) { { type: "EMC_TASK_PLAN_PAUSE" }, ], { operatorMessage: "task/HAL program paused", - preserveMachine: pausedMachine, + }).then((status) => { + if (isTaskHalStatusPaused(status)) { + startTaskHalStatusLoop({ + batchSize: 1, + operatorMessage: "task/HAL paused status monitor running", + }); + } }).catch(() => {}); break; } @@ -1858,7 +1864,6 @@ export function createSimulationStore(seed = {}) { { type: "EMC_TASK_PLAN_RESUME" }, ], { operatorMessage: "task/HAL program resumed", - preserveMachine: resumedMachine, }).then((status) => { if (shouldContinueTaskHalStatusLoop(state, status)) { startTaskHalStatusLoop({ @@ -2274,6 +2279,9 @@ export function createSimulationStore(seed = {}) { }; const refreshAsyncKinematicsFrame = async ({ operatorMessage = state.operatorMessage } = {}) => { + if (state.taskHalPauseLock?.active === true || isTaskHalRunPausedByOperator(state)) { + return state.rtcpFrame; + } if (state.desiredFrameSourceMode !== "source-derived-kinematics-wasm") { return state.rtcpFrame; } @@ -2296,6 +2304,14 @@ export function createSimulationStore(seed = {}) { if (state.asyncFrameRefreshSequence !== sequence) { return state.rtcpFrame; } + if (state.taskHalPauseLock?.active === true || isTaskHalRunPausedByOperator(state)) { + state = { + ...state, + asyncFrameRefreshPending: false, + }; + notify(); + return state.rtcpFrame; + } const frame = buildRtcpFrame({ axisPose: state.axisPose, activeLine: state.activeLine, @@ -2988,6 +3004,7 @@ export function createSimulationStore(seed = {}) { }; const scheduleAsyncKinematicsRefresh = () => { + if (state.taskHalPauseLock?.active === true || isTaskHalRunPausedByOperator(state)) return null; if (state.asyncFrameRefreshPending) return null; if (state.desiredFrameSourceMode !== "source-derived-kinematics-wasm") return null; if (!state.kinematicsRuntime?.loaded || !isAsyncKinematicsRuntime(state.kinematicsRuntime)) return null; @@ -3779,43 +3796,44 @@ function applyTaskHalStatusPatch(state, status, operatorMessage, { const ui = status?.ui || {}; const task = status?.task || {}; const motion = status?.motionStatus?.motion || {}; - const pauseLock = state.taskHalPauseLock?.active === true ? state.taskHalPauseLock : null; + const statusInterpState = normalizeTaskHalInterpState(ui.interpState || task.interpState); + const statusMotionPaused = ui.motionPaused === true || motion.paused === true; + const statusTaskPaused = ui.taskPaused === true || task.taskPaused === true; + const statusPaused = statusInterpState === "paused" || statusMotionPaused || statusTaskPaused; const rawTaskState = normalizeTaskHalTaskState(ui.taskState || task.state); const taskState = preserveMachine?.powerOn && rawTaskState === "estop-reset" ? "on" : rawTaskState; - const taskMode = pauseLock + const taskMode = statusPaused ? programControlModeForMachine(state.machine) : normalizeLinuxCncTaskMode(preserveMachine?.mode || ui.taskMode || task.mode || state.machine.mode); const manualPanel = taskMode === "manual" ? (preserveMachine?.manualPanel || state.machine.manualPanel || "manual") : null; - const interpState = pauseLock + const interpState = statusPaused ? "paused" : Object.hasOwn(preserveMachine || {}, "interpState") ? normalizeTaskHalInterpState(preserveMachine.interpState) - : normalizeTaskHalInterpState(ui.interpState || task.interpState); + : statusInterpState; const allHomed = Boolean(preserveMachine?.allHomed ?? state.machine.allHomed); const activeLine = state.programStartLine + Math.max(Number(ui.activeLine || 1) - 1, 0); const kinsType = resolveTaskHalKinsType(state, status, activeLine); - const motionPaused = Boolean(pauseLock) || - ui.motionPaused === true || - motion.paused === true || - preserveMachine?.motionPaused === true; - const taskPaused = ui.taskPaused === true || task.taskPaused === true || preserveMachine?.taskPaused === true; - const paused = Boolean(pauseLock) || interpState === "paused" || motionPaused || taskPaused; + const motionPaused = statusMotionPaused || preserveMachine?.motionPaused === true; + const taskPaused = statusTaskPaused || preserveMachine?.taskPaused === true; + const paused = interpState === "paused" || motionPaused || taskPaused; const interpResumeState = normalizeTaskHalInterpState( ui.interpResumeState || task.interpResumeState || (paused ? state.machine.interpResumeState || "reading" : interpState), ); - const axisPose = pauseLock?.axisPose - ? clampAxisPoseToProfile(pauseLock.axisPose, state.profile) - : paused - ? clampAxisPoseToProfile(state.axisPose, state.profile) + const displayPauseLock = paused && state.taskHalPauseLock?.active === true + ? state.taskHalPauseLock + : null; + const axisPose = displayPauseLock?.axisPose + ? clampAxisPoseToProfile(displayPauseLock.axisPose, state.profile) : preserveAxisPose ? clampAxisPoseToProfile({ ...state.axisPose, ...preserveAxisPose }, state.profile) - : resolveTaskHalAxisPose(state, status); + : resolveTaskHalAxisPose(state, status, { paused, runState: state.runState }); const currentVelocity = paused ? 0 : Number.isFinite(ui.currentVelocity) @@ -3841,9 +3859,9 @@ function applyTaskHalStatusPatch(state, status, operatorMessage, { const shouldTrackProgramPlayback = runState === "running" || runState === "mdi" || (runState === "complete" && (state.runState === "running" || state.runState === "mdi" || state.runState === "complete")); - const taskHalSampleIndex = pauseLock + const taskHalSampleIndex = displayPauseLock ? clampNumber( - pauseLock.sampleIndex, + displayPauseLock.sampleIndex, 0, Math.max(Number(state.programAxisPreviewPath?.samples?.length || state.programAxisPreviewPath?.sampleCount || 1) - 1, 0), ) @@ -3857,15 +3875,15 @@ function applyTaskHalStatusPatch(state, status, operatorMessage, { const idleRuntimeFeedback = { ...runtimeFeedback, sampleIndex: taskHalSampleIndex, - motionIndex: pauseLock - ? Number(pauseLock.motionIndex || 0) + motionIndex: displayPauseLock + ? Number(displayPauseLock.motionIndex || 0) : Number(state.programExecutionMotionIndex || runtimeFeedback.motionIndex || 0), ...(paused ? { axisPose, tcp: { - x: Number(state.tcpPose?.x ?? axisPose.x ?? 0), - y: Number(state.tcpPose?.y ?? axisPose.y ?? 0), - z: Number(state.tcpPose?.z ?? axisPose.z ?? 0), + x: Number(displayPauseLock?.tcpPose?.x ?? state.tcpPose?.x ?? axisPose.x ?? 0), + y: Number(displayPauseLock?.tcpPose?.y ?? state.tcpPose?.y ?? axisPose.y ?? 0), + z: Number(displayPauseLock?.tcpPose?.z ?? state.tcpPose?.z ?? axisPose.z ?? 0), }, } : {}), }; @@ -3875,12 +3893,12 @@ function applyTaskHalStatusPatch(state, status, operatorMessage, { axisPose, kinsType, rtcpState: rtcpStateFromKinsType(kinsType), - motionIndex: pauseLock ? Number(pauseLock.motionIndex || 0) : runtimeFeedback.motionIndex, + motionIndex: displayPauseLock ? Number(displayPauseLock.motionIndex || 0) : runtimeFeedback.motionIndex, sampleIndex: taskHalSampleIndex, runtimeFeedback: { ...runtimeFeedback, sampleIndex: taskHalSampleIndex, - motionIndex: pauseLock ? Number(pauseLock.motionIndex || 0) : runtimeFeedback.motionIndex, + motionIndex: displayPauseLock ? Number(displayPauseLock.motionIndex || 0) : runtimeFeedback.motionIndex, axisPose, currentVelocityMmPerMin: paused ? 0 : runtimeFeedback.currentVelocityMmPerMin, requestedVelocityMmPerMin: paused ? 0 : runtimeFeedback.requestedVelocityMmPerMin, @@ -3900,6 +3918,8 @@ function applyTaskHalStatusPatch(state, status, operatorMessage, { ? createProgramUiExecution({ ...state, axisPose, + tcpPose: displayPauseLock?.tcpPose || state.tcpPose, + rtcpFrame: displayPauseLock?.rtcpFrame || state.rtcpFrame, kinsType: kinsType || state.kinsType, programExecutionSampleIndex: taskHalSampleIndex, programRuntimeFeedback: idleRuntimeFeedback, @@ -3909,7 +3929,7 @@ function applyTaskHalStatusPatch(state, status, operatorMessage, { const loopActive = state.taskHalStatusLoop?.active === true && loopSequence !== null && Number(state.taskHalStatusLoop.sequence) === Number(loopSequence) - && (runState === "running" || runState === "mdi"); + && (runState === "running" || runState === "mdi" || runState === "paused"); const nextTickCount = loopActive ? Number(state.taskHalStatusLoop.tickCount || 0) + 1 : Number(state.taskHalStatusLoop?.tickCount || 0); const feedbackHistory = [taskHalPlaybackPatch.programRuntimeFeedback, ...(state.programRuntimeFeedbackHistory || [])].slice(0, 100); const lineStatus = runState === "complete" @@ -3921,10 +3941,15 @@ function applyTaskHalStatusPatch(state, status, operatorMessage, { return { taskHalStatus: status, taskHalExecutionPending: false, - taskHalPauseLock: pauseLock ? { ...pauseLock, lastStatusAt: new Date().toISOString() } : state.taskHalPauseLock, + taskHalPauseLock: displayPauseLock ? { ...displayPauseLock, lastStatusAt: new Date().toISOString() } : null, taskHalFallbackReason: null, pendingJogCommand: null, ...taskHalPlaybackPatch, + ...(displayPauseLock ? { + tcpPose: displayPauseLock.tcpPose, + rtcpFrame: displayPauseLock.rtcpFrame, + dro: displayPauseLock.dro, + } : {}), programExecutionSourceMode: "linuxcnc-task-motion-hal-wasm", machine: { ...state.machine, @@ -3978,9 +4003,26 @@ function shouldContinueTaskHalStatusLoop(state = {}, status = {}) { const openedProgramLineCount = Number(task.openedSourceLineCount || task.openedLineCount || 1); const complete = interpState === "idle" && Number(task.nextProgramLine || 0) >= openedProgramLineCount; + if (paused) { + return state.runState === "paused" || + state.machine?.interpState === "paused" || + state.machine?.taskPaused === true || + state.machine?.motionPaused === true; + } return !aborted && !paused && !complete && (interpState === "reading" || taskMode === "mdi"); } +function isTaskHalStatusPaused(status = {}) { + const ui = status?.ui || {}; + const task = status?.task || {}; + const motion = status?.motionStatus?.motion || {}; + return normalizeTaskHalInterpState(ui.interpState || task.interpState) === "paused" || + ui.motionPaused === true || + ui.taskPaused === true || + motion.paused === true || + task.taskPaused === true; +} + function isTaskHalRunPausedByOperator(state = {}) { return state.runState === "paused" || state.machine?.interpState === "paused" @@ -4024,6 +4066,8 @@ function createTaskHalPauseLock(state = {}, source = "pause") { y: Number(state.tcpPose?.y || 0), z: Number(state.tcpPose?.z || 0), }, + rtcpFrame: state.rtcpFrame, + dro: state.dro, semanticBoundary: "linuxcnc_axis_task_pauseresume_freezes_task_hal_status_until_resume", }; } @@ -4104,7 +4148,7 @@ function programMotionAtOrBeforeLine(state, activeLine) { return candidate; } -function resolveTaskHalAxisPose(state, status) { +function resolveTaskHalAxisPose(state, status, { paused = false, runState = state.runState } = {}) { const ui = status?.ui || {}; const axisPose = ui.axisPose; if (!axisPose || typeof axisPose !== "object") { @@ -4127,6 +4171,10 @@ function resolveTaskHalAxisPose(state, status) { return addAxisDelta(state.axisPose, ui.axisPoseDelta, state.profile); } + if (!paused && runState !== "running" && runState !== "mdi" && !isJogStatus(status)) { + return state.axisPose; + } + if (!ui.axisPoseFrame && wouldResetNonZeroPoseToLocalZero(state.axisPose, axisPose)) { return state.axisPose; } diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/pause-position-traces/pause-position-20260707T145233Z/trace.json b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/pause-position-traces/pause-position-20260707T145233Z/trace.json new file mode 100644 index 0000000..a996b05 --- /dev/null +++ b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/pause-position-traces/pause-position-20260707T145233Z/trace.json @@ -0,0 +1,2556 @@ +{ + "apiName": "xyzbc-trt-pause-position-json-trace", + "status": "failed-position-changed", + "capturedAt": "2026-07-07T14:52:41.391Z", + "appUrlPath": "/web-rtcp-5axis-xyzbc-trt-sim-plan/app/dist/index.html", + "url": "http://127.0.0.1:39465/web-rtcp-5axis-xyzbc-trt-sim-plan/app/dist/index.html", + "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/pause-position-traces/pause-position-20260707T145233Z", + "pauseSelector": "[data-tool-id=\"tbtn_pause\"]", + "analysis": { + "baselineLabel": "pause-start", + "pausedSampleCount": 31, + "changedFields": [ + "axisPose.x", + "axisPose.y", + "axisPose.z", + "dro.x", + "dro.y", + "dro.z", + "dro.tcpX", + "dro.tcpY", + "dro.tcpZ" + ], + "positionChangedAfterPause": true + }, + "samples": [ + { + "label": "before-pause", + "capturedAt": "2026-07-07T14:52:37.601Z", + "runState": "running", + "taskState": "on", + "mode": "auto", + "interpState": "reading", + "taskPaused": false, + "activeLine": 16, + "sampleIndex": 36, + "currentVelocity": 203.7696, + "axisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 8.27586, + "c": 18.6207 + }, + "dro": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 8.27586, + "c": 18.6207, + "tcpX": 10, + "tcpY": 20, + "tcpZ": 10 + }, + "runtimeAxisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 8.27586, + "c": 18.6207 + }, + "runtimeTcp": { + "x": 10, + "y": 20, + "z": 10 + }, + "uiExecution": { + "status": "running", + "sampleIndex": 36, + "sourceFile": "helix_bc.ngc", + "line": 16, + "statement": "g0b#c#", + "joint": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 8.27586, + "c": 18.6207 + }, + "tcp": { + "x": 10, + "y": 20, + "z": 10 + } + }, + "canvasToolhead": { + "x": 0.01, + "y": 0.02, + "z": 0.01 + }, + "canvasToolAxis": { + "x": 0.136, + "y": 0.046, + "z": 0.99 + }, + "pauseButton": { + "action": "pause-resume", + "paused": "false", + "title": "Pause program" + } + }, + { + "label": "pause-start", + "capturedAt": "2026-07-07T14:52:37.825Z", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "activeLine": 16, + "sampleIndex": 39, + "currentVelocity": 0, + "axisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 10.3448, + "c": 23.2759 + }, + "dro": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 10.3448, + "c": 23.2759, + "tcpX": 10, + "tcpY": 20, + "tcpZ": 10 + }, + "runtimeAxisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 10.3448, + "c": 23.2759 + }, + "runtimeTcp": { + "x": 15.29042230208562, + "y": 15.194488529384802, + "z": 11.633163978655007 + }, + "uiExecution": { + "status": "paused", + "sampleIndex": 39, + "sourceFile": "helix_bc.ngc", + "line": 16, + "statement": "g0b#c#", + "joint": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 10.3448, + "c": 23.2759 + }, + "tcp": { + "x": 15.29042230208562, + "y": 15.194488529384802, + "z": 11.633163978655007 + } + }, + "canvasToolhead": { + "x": 0.015, + "y": 0.015, + "z": 0.012 + }, + "canvasToolAxis": { + "x": 0.165, + "y": 0.071, + "z": 0.984 + }, + "pauseButton": { + "action": "pause-resume", + "paused": "true", + "title": "Resume program" + } + }, + { + "label": "pause-hold-102", + "capturedAt": "2026-07-07T14:52:37.946Z", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "activeLine": 16, + "sampleIndex": 39, + "currentVelocity": 0, + "axisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 10.3448, + "c": 23.2759 + }, + "dro": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 10.3448, + "c": 23.2759, + "tcpX": 10, + "tcpY": 20, + "tcpZ": 10 + }, + "runtimeAxisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 10.3448, + "c": 23.2759 + }, + "runtimeTcp": { + "x": 15.29042230208562, + "y": 15.194488529384802, + "z": 11.633163978655007 + }, + "uiExecution": { + "status": "paused", + "sampleIndex": 39, + "sourceFile": "helix_bc.ngc", + "line": 16, + "statement": "g0b#c#", + "joint": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 10.3448, + "c": 23.2759 + }, + "tcp": { + "x": 15.29042230208562, + "y": 15.194488529384802, + "z": 11.633163978655007 + } + }, + "canvasToolhead": { + "x": 0.015, + "y": 0.015, + "z": 0.012 + }, + "canvasToolAxis": { + "x": 0.165, + "y": 0.071, + "z": 0.984 + }, + "pauseButton": { + "action": "pause-resume", + "paused": "true", + "title": "Resume program" + } + }, + { + "label": "pause-hold-223", + "capturedAt": "2026-07-07T14:52:38.058Z", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "activeLine": 16, + "sampleIndex": 39, + "currentVelocity": 0, + "axisPose": { + "x": 15.29042230208562, + "y": 15.194488529384802, + "z": 11.633163978655007, + "a": 0, + "b": 10.3448, + "c": 23.2759 + }, + "dro": { + "x": 15.29042230208562, + "y": 15.194488529384802, + "z": 11.633163978655007, + "a": 0, + "b": 10.3448, + "c": 23.2759, + "tcpX": 15.29042230208562, + "tcpY": 15.194488529384802, + "tcpZ": 11.633163978655007 + }, + "runtimeAxisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 10.3448, + "c": 23.2759 + }, + "runtimeTcp": { + "x": 15.29042230208562, + "y": 15.194488529384802, + "z": 11.633163978655007 + }, + "uiExecution": { + "status": "paused", + "sampleIndex": 39, + "sourceFile": "helix_bc.ngc", + "line": 16, + "statement": "g0b#c#", + "joint": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 10.3448, + "c": 23.2759 + }, + "tcp": { + "x": 15.29042230208562, + "y": 15.194488529384802, + "z": 11.633163978655007 + } + }, + "canvasToolhead": { + "x": 0.015, + "y": 0.015, + "z": 0.012 + }, + "canvasToolAxis": { + "x": 0.165, + "y": 0.071, + "z": 0.984 + }, + "pauseButton": { + "action": "pause-resume", + "paused": "true", + "title": "Resume program" + } + }, + { + "label": "pause-hold-334", + "capturedAt": "2026-07-07T14:52:38.184Z", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "activeLine": 16, + "sampleIndex": 39, + "currentVelocity": 0, + "axisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 10.3448, + "c": 23.2759 + }, + "dro": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 10.3448, + "c": 23.2759, + "tcpX": 10, + "tcpY": 20, + "tcpZ": 10 + }, + "runtimeAxisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 10.3448, + "c": 23.2759 + }, + "runtimeTcp": { + "x": 15.29042230208562, + "y": 15.194488529384802, + "z": 11.633163978655007 + }, + "uiExecution": { + "status": "paused", + "sampleIndex": 39, + "sourceFile": "helix_bc.ngc", + "line": 16, + "statement": "g0b#c#", + "joint": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 10.3448, + "c": 23.2759 + }, + "tcp": { + "x": 15.29042230208562, + "y": 15.194488529384802, + "z": 11.633163978655007 + } + }, + "canvasToolhead": { + "x": 0.015, + "y": 0.015, + "z": 0.012 + }, + "canvasToolAxis": { + "x": 0.165, + "y": 0.071, + "z": 0.984 + }, + "pauseButton": { + "action": "pause-resume", + "paused": "true", + "title": "Resume program" + } + }, + { + "label": "pause-hold-459", + "capturedAt": "2026-07-07T14:52:38.306Z", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "activeLine": 16, + "sampleIndex": 39, + "currentVelocity": 0, + "axisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 10.3448, + "c": 23.2759 + }, + "dro": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 10.3448, + "c": 23.2759, + "tcpX": 10, + "tcpY": 20, + "tcpZ": 10 + }, + "runtimeAxisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 10.3448, + "c": 23.2759 + }, + "runtimeTcp": { + "x": 15.29042230208562, + "y": 15.194488529384802, + "z": 11.633163978655007 + }, + "uiExecution": { + "status": "paused", + "sampleIndex": 39, + "sourceFile": "helix_bc.ngc", + "line": 16, + "statement": "g0b#c#", + "joint": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 10.3448, + "c": 23.2759 + }, + "tcp": { + "x": 15.29042230208562, + "y": 15.194488529384802, + "z": 11.633163978655007 + } + }, + "canvasToolhead": { + "x": 0.015, + "y": 0.015, + "z": 0.012 + }, + "canvasToolAxis": { + "x": 0.165, + "y": 0.071, + "z": 0.984 + }, + "pauseButton": { + "action": "pause-resume", + "paused": "true", + "title": "Resume program" + } + }, + { + "label": "pause-hold-581", + "capturedAt": "2026-07-07T14:52:38.426Z", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "activeLine": 16, + "sampleIndex": 39, + "currentVelocity": 0, + "axisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 10.3448, + "c": 23.2759 + }, + "dro": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 10.3448, + "c": 23.2759, + "tcpX": 10, + "tcpY": 20, + "tcpZ": 10 + }, + "runtimeAxisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 10.3448, + "c": 23.2759 + }, + "runtimeTcp": { + "x": 15.29042230208562, + "y": 15.194488529384802, + "z": 11.633163978655007 + }, + "uiExecution": { + "status": "paused", + "sampleIndex": 39, + "sourceFile": "helix_bc.ngc", + "line": 16, + "statement": "g0b#c#", + "joint": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 10.3448, + "c": 23.2759 + }, + "tcp": { + "x": 15.29042230208562, + "y": 15.194488529384802, + "z": 11.633163978655007 + } + }, + "canvasToolhead": { + "x": 0.015, + "y": 0.015, + "z": 0.012 + }, + "canvasToolAxis": { + "x": 0.165, + "y": 0.071, + "z": 0.984 + }, + "pauseButton": { + "action": "pause-resume", + "paused": "true", + "title": "Resume program" + } + }, + { + "label": "pause-hold-700", + "capturedAt": "2026-07-07T14:52:38.538Z", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "activeLine": 16, + "sampleIndex": 39, + "currentVelocity": 0, + "axisPose": { + "x": 15.29042230208562, + "y": 15.194488529384802, + "z": 11.633163978655007, + "a": 0, + "b": 10.3448, + "c": 23.2759 + }, + "dro": { + "x": 15.29042230208562, + "y": 15.194488529384802, + "z": 11.633163978655007, + "a": 0, + "b": 10.3448, + "c": 23.2759, + "tcpX": 15.29042230208562, + "tcpY": 15.194488529384802, + "tcpZ": 11.633163978655007 + }, + "runtimeAxisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 10.3448, + "c": 23.2759 + }, + "runtimeTcp": { + "x": 15.29042230208562, + "y": 15.194488529384802, + "z": 11.633163978655007 + }, + "uiExecution": { + "status": "paused", + "sampleIndex": 39, + "sourceFile": "helix_bc.ngc", + "line": 16, + "statement": "g0b#c#", + "joint": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 10.3448, + "c": 23.2759 + }, + "tcp": { + "x": 15.29042230208562, + "y": 15.194488529384802, + "z": 11.633163978655007 + } + }, + "canvasToolhead": { + "x": 0.015, + "y": 0.015, + "z": 0.012 + }, + "canvasToolAxis": { + "x": 0.165, + "y": 0.071, + "z": 0.984 + }, + "pauseButton": { + "action": "pause-resume", + "paused": "true", + "title": "Resume program" + } + }, + { + "label": "pause-hold-814", + "capturedAt": "2026-07-07T14:52:38.644Z", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "activeLine": 16, + "sampleIndex": 39, + "currentVelocity": 0, + "axisPose": { + "x": 15.29042230208562, + "y": 15.194488529384802, + "z": 11.633163978655007, + "a": 0, + "b": 10.3448, + "c": 23.2759 + }, + "dro": { + "x": 15.29042230208562, + "y": 15.194488529384802, + "z": 11.633163978655007, + "a": 0, + "b": 10.3448, + "c": 23.2759, + "tcpX": 15.29042230208562, + "tcpY": 15.194488529384802, + "tcpZ": 11.633163978655007 + }, + "runtimeAxisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 10.3448, + "c": 23.2759 + }, + "runtimeTcp": { + "x": 15.29042230208562, + "y": 15.194488529384802, + "z": 11.633163978655007 + }, + "uiExecution": { + "status": "paused", + "sampleIndex": 39, + "sourceFile": "helix_bc.ngc", + "line": 16, + "statement": "g0b#c#", + "joint": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 10.3448, + "c": 23.2759 + }, + "tcp": { + "x": 15.29042230208562, + "y": 15.194488529384802, + "z": 11.633163978655007 + } + }, + "canvasToolhead": { + "x": 0.015, + "y": 0.015, + "z": 0.012 + }, + "canvasToolAxis": { + "x": 0.165, + "y": 0.071, + "z": 0.984 + }, + "pauseButton": { + "action": "pause-resume", + "paused": "true", + "title": "Resume program" + } + }, + { + "label": "pause-hold-919", + "capturedAt": "2026-07-07T14:52:38.761Z", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "activeLine": 16, + "sampleIndex": 39, + "currentVelocity": 0, + "axisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 10.3448, + "c": 23.2759 + }, + "dro": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 10.3448, + "c": 23.2759, + "tcpX": 10, + "tcpY": 20, + "tcpZ": 10 + }, + "runtimeAxisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 10.3448, + "c": 23.2759 + }, + "runtimeTcp": { + "x": 15.29042230208562, + "y": 15.194488529384802, + "z": 11.633163978655007 + }, + "uiExecution": { + "status": "paused", + "sampleIndex": 39, + "sourceFile": "helix_bc.ngc", + "line": 16, + "statement": "g0b#c#", + "joint": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 10.3448, + "c": 23.2759 + }, + "tcp": { + "x": 15.29042230208562, + "y": 15.194488529384802, + "z": 11.633163978655007 + } + }, + "canvasToolhead": { + "x": 0.015, + "y": 0.015, + "z": 0.012 + }, + "canvasToolAxis": { + "x": 0.165, + "y": 0.071, + "z": 0.984 + }, + "pauseButton": { + "action": "pause-resume", + "paused": "true", + "title": "Resume program" + } + }, + { + "label": "pause-hold-1037", + "capturedAt": "2026-07-07T14:52:38.882Z", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "activeLine": 16, + "sampleIndex": 39, + "currentVelocity": 0, + "axisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 10.3448, + "c": 23.2759 + }, + "dro": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 10.3448, + "c": 23.2759, + "tcpX": 10, + "tcpY": 20, + "tcpZ": 10 + }, + "runtimeAxisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 10.3448, + "c": 23.2759 + }, + "runtimeTcp": { + "x": 15.29042230208562, + "y": 15.194488529384802, + "z": 11.633163978655007 + }, + "uiExecution": { + "status": "paused", + "sampleIndex": 39, + "sourceFile": "helix_bc.ngc", + "line": 16, + "statement": "g0b#c#", + "joint": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 10.3448, + "c": 23.2759 + }, + "tcp": { + "x": 15.29042230208562, + "y": 15.194488529384802, + "z": 11.633163978655007 + } + }, + "canvasToolhead": { + "x": 0.015, + "y": 0.015, + "z": 0.012 + }, + "canvasToolAxis": { + "x": 0.165, + "y": 0.071, + "z": 0.984 + }, + "pauseButton": { + "action": "pause-resume", + "paused": "true", + "title": "Resume program" + } + }, + { + "label": "pause-hold-1158", + "capturedAt": "2026-07-07T14:52:39.014Z", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "activeLine": 16, + "sampleIndex": 39, + "currentVelocity": 0, + "axisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 10.3448, + "c": 23.2759 + }, + "dro": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 10.3448, + "c": 23.2759, + "tcpX": 10, + "tcpY": 20, + "tcpZ": 10 + }, + "runtimeAxisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 10.3448, + "c": 23.2759 + }, + "runtimeTcp": { + "x": 15.29042230208562, + "y": 15.194488529384802, + "z": 11.633163978655007 + }, + "uiExecution": { + "status": "paused", + "sampleIndex": 39, + "sourceFile": "helix_bc.ngc", + "line": 16, + "statement": "g0b#c#", + "joint": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 10.3448, + "c": 23.2759 + }, + "tcp": { + "x": 15.29042230208562, + "y": 15.194488529384802, + "z": 11.633163978655007 + } + }, + "canvasToolhead": { + "x": 0.015, + "y": 0.015, + "z": 0.012 + }, + "canvasToolAxis": { + "x": 0.165, + "y": 0.071, + "z": 0.984 + }, + "pauseButton": { + "action": "pause-resume", + "paused": "true", + "title": "Resume program" + } + }, + { + "label": "pause-hold-1290", + "capturedAt": "2026-07-07T14:52:39.128Z", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "activeLine": 16, + "sampleIndex": 39, + "currentVelocity": 0, + "axisPose": { + "x": 15.29042230208562, + "y": 15.194488529384802, + "z": 11.633163978655007, + "a": 0, + "b": 10.3448, + "c": 23.2759 + }, + "dro": { + "x": 15.29042230208562, + "y": 15.194488529384802, + "z": 11.633163978655007, + "a": 0, + "b": 10.3448, + "c": 23.2759, + "tcpX": 15.29042230208562, + "tcpY": 15.194488529384802, + "tcpZ": 11.633163978655007 + }, + "runtimeAxisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 10.3448, + "c": 23.2759 + }, + "runtimeTcp": { + "x": 15.29042230208562, + "y": 15.194488529384802, + "z": 11.633163978655007 + }, + "uiExecution": { + "status": "paused", + "sampleIndex": 39, + "sourceFile": "helix_bc.ngc", + "line": 16, + "statement": "g0b#c#", + "joint": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 10.3448, + "c": 23.2759 + }, + "tcp": { + "x": 15.29042230208562, + "y": 15.194488529384802, + "z": 11.633163978655007 + } + }, + "canvasToolhead": { + "x": 0.015, + "y": 0.015, + "z": 0.012 + }, + "canvasToolAxis": { + "x": 0.165, + "y": 0.071, + "z": 0.984 + }, + "pauseButton": { + "action": "pause-resume", + "paused": "true", + "title": "Resume program" + } + }, + { + "label": "pause-hold-1404", + "capturedAt": "2026-07-07T14:52:39.251Z", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "activeLine": 16, + "sampleIndex": 39, + "currentVelocity": 0, + "axisPose": { + "x": 15.29042230208562, + "y": 15.194488529384802, + "z": 11.633163978655007, + "a": 0, + "b": 10.3448, + "c": 23.2759 + }, + "dro": { + "x": 15.29042230208562, + "y": 15.194488529384802, + "z": 11.633163978655007, + "a": 0, + "b": 10.3448, + "c": 23.2759, + "tcpX": 15.29042230208562, + "tcpY": 15.194488529384802, + "tcpZ": 11.633163978655007 + }, + "runtimeAxisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 10.3448, + "c": 23.2759 + }, + "runtimeTcp": { + "x": 15.29042230208562, + "y": 15.194488529384802, + "z": 11.633163978655007 + }, + "uiExecution": { + "status": "paused", + "sampleIndex": 39, + "sourceFile": "helix_bc.ngc", + "line": 16, + "statement": "g0b#c#", + "joint": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 10.3448, + "c": 23.2759 + }, + "tcp": { + "x": 15.29042230208562, + "y": 15.194488529384802, + "z": 11.633163978655007 + } + }, + "canvasToolhead": { + "x": 0.015, + "y": 0.015, + "z": 0.012 + }, + "canvasToolAxis": { + "x": 0.165, + "y": 0.071, + "z": 0.984 + }, + "pauseButton": { + "action": "pause-resume", + "paused": "true", + "title": "Resume program" + } + }, + { + "label": "pause-hold-1525", + "capturedAt": "2026-07-07T14:52:39.357Z", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "activeLine": 16, + "sampleIndex": 39, + "currentVelocity": 0, + "axisPose": { + "x": 15.29042230208562, + "y": 15.194488529384802, + "z": 11.633163978655007, + "a": 0, + "b": 10.3448, + "c": 23.2759 + }, + "dro": { + "x": 15.29042230208562, + "y": 15.194488529384802, + "z": 11.633163978655007, + "a": 0, + "b": 10.3448, + "c": 23.2759, + "tcpX": 15.29042230208562, + "tcpY": 15.194488529384802, + "tcpZ": 11.633163978655007 + }, + "runtimeAxisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 10.3448, + "c": 23.2759 + }, + "runtimeTcp": { + "x": 15.29042230208562, + "y": 15.194488529384802, + "z": 11.633163978655007 + }, + "uiExecution": { + "status": "paused", + "sampleIndex": 39, + "sourceFile": "helix_bc.ngc", + "line": 16, + "statement": "g0b#c#", + "joint": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 10.3448, + "c": 23.2759 + }, + "tcp": { + "x": 15.29042230208562, + "y": 15.194488529384802, + "z": 11.633163978655007 + } + }, + "canvasToolhead": { + "x": 0.015, + "y": 0.015, + "z": 0.012 + }, + "canvasToolAxis": { + "x": 0.165, + "y": 0.071, + "z": 0.984 + }, + "pauseButton": { + "action": "pause-resume", + "paused": "true", + "title": "Resume program" + } + }, + { + "label": "pause-hold-1635", + "capturedAt": "2026-07-07T14:52:39.479Z", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "activeLine": 16, + "sampleIndex": 39, + "currentVelocity": 0, + "axisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 10.3448, + "c": 23.2759 + }, + "dro": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 10.3448, + "c": 23.2759, + "tcpX": 10, + "tcpY": 20, + "tcpZ": 10 + }, + "runtimeAxisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 10.3448, + "c": 23.2759 + }, + "runtimeTcp": { + "x": 15.29042230208562, + "y": 15.194488529384802, + "z": 11.633163978655007 + }, + "uiExecution": { + "status": "paused", + "sampleIndex": 39, + "sourceFile": "helix_bc.ngc", + "line": 16, + "statement": "g0b#c#", + "joint": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 10.3448, + "c": 23.2759 + }, + "tcp": { + "x": 15.29042230208562, + "y": 15.194488529384802, + "z": 11.633163978655007 + } + }, + "canvasToolhead": { + "x": 0.015, + "y": 0.015, + "z": 0.012 + }, + "canvasToolAxis": { + "x": 0.165, + "y": 0.071, + "z": 0.984 + }, + "pauseButton": { + "action": "pause-resume", + "paused": "true", + "title": "Resume program" + } + }, + { + "label": "pause-hold-1755", + "capturedAt": "2026-07-07T14:52:39.590Z", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "activeLine": 16, + "sampleIndex": 39, + "currentVelocity": 0, + "axisPose": { + "x": 15.29042230208562, + "y": 15.194488529384802, + "z": 11.633163978655007, + "a": 0, + "b": 10.3448, + "c": 23.2759 + }, + "dro": { + "x": 15.29042230208562, + "y": 15.194488529384802, + "z": 11.633163978655007, + "a": 0, + "b": 10.3448, + "c": 23.2759, + "tcpX": 15.29042230208562, + "tcpY": 15.194488529384802, + "tcpZ": 11.633163978655007 + }, + "runtimeAxisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 10.3448, + "c": 23.2759 + }, + "runtimeTcp": { + "x": 15.29042230208562, + "y": 15.194488529384802, + "z": 11.633163978655007 + }, + "uiExecution": { + "status": "paused", + "sampleIndex": 39, + "sourceFile": "helix_bc.ngc", + "line": 16, + "statement": "g0b#c#", + "joint": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 10.3448, + "c": 23.2759 + }, + "tcp": { + "x": 15.29042230208562, + "y": 15.194488529384802, + "z": 11.633163978655007 + } + }, + "canvasToolhead": { + "x": 0.015, + "y": 0.015, + "z": 0.012 + }, + "canvasToolAxis": { + "x": 0.165, + "y": 0.071, + "z": 0.984 + }, + "pauseButton": { + "action": "pause-resume", + "paused": "true", + "title": "Resume program" + } + }, + { + "label": "pause-hold-1866", + "capturedAt": "2026-07-07T14:52:39.709Z", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "activeLine": 16, + "sampleIndex": 39, + "currentVelocity": 0, + "axisPose": { + "x": 15.29042230208562, + "y": 15.194488529384802, + "z": 11.633163978655007, + "a": 0, + "b": 10.3448, + "c": 23.2759 + }, + "dro": { + "x": 15.29042230208562, + "y": 15.194488529384802, + "z": 11.633163978655007, + "a": 0, + "b": 10.3448, + "c": 23.2759, + "tcpX": 15.29042230208562, + "tcpY": 15.194488529384802, + "tcpZ": 11.633163978655007 + }, + "runtimeAxisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 10.3448, + "c": 23.2759 + }, + "runtimeTcp": { + "x": 15.29042230208562, + "y": 15.194488529384802, + "z": 11.633163978655007 + }, + "uiExecution": { + "status": "paused", + "sampleIndex": 39, + "sourceFile": "helix_bc.ngc", + "line": 16, + "statement": "g0b#c#", + "joint": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 10.3448, + "c": 23.2759 + }, + "tcp": { + "x": 15.29042230208562, + "y": 15.194488529384802, + "z": 11.633163978655007 + } + }, + "canvasToolhead": { + "x": 0.015, + "y": 0.015, + "z": 0.012 + }, + "canvasToolAxis": { + "x": 0.165, + "y": 0.071, + "z": 0.984 + }, + "pauseButton": { + "action": "pause-resume", + "paused": "true", + "title": "Resume program" + } + }, + { + "label": "pause-hold-1984", + "capturedAt": "2026-07-07T14:52:39.829Z", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "activeLine": 16, + "sampleIndex": 39, + "currentVelocity": 0, + "axisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 10.3448, + "c": 23.2759 + }, + "dro": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 10.3448, + "c": 23.2759, + "tcpX": 10, + "tcpY": 20, + "tcpZ": 10 + }, + "runtimeAxisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 10.3448, + "c": 23.2759 + }, + "runtimeTcp": { + "x": 15.29042230208562, + "y": 15.194488529384802, + "z": 11.633163978655007 + }, + "uiExecution": { + "status": "paused", + "sampleIndex": 39, + "sourceFile": "helix_bc.ngc", + "line": 16, + "statement": "g0b#c#", + "joint": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 10.3448, + "c": 23.2759 + }, + "tcp": { + "x": 15.29042230208562, + "y": 15.194488529384802, + "z": 11.633163978655007 + } + }, + "canvasToolhead": { + "x": 0.015, + "y": 0.015, + "z": 0.012 + }, + "canvasToolAxis": { + "x": 0.165, + "y": 0.071, + "z": 0.984 + }, + "pauseButton": { + "action": "pause-resume", + "paused": "true", + "title": "Resume program" + } + }, + { + "label": "pause-hold-2105", + "capturedAt": "2026-07-07T14:52:39.947Z", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "activeLine": 16, + "sampleIndex": 39, + "currentVelocity": 0, + "axisPose": { + "x": 15.29042230208562, + "y": 15.194488529384802, + "z": 11.633163978655007, + "a": 0, + "b": 10.3448, + "c": 23.2759 + }, + "dro": { + "x": 15.29042230208562, + "y": 15.194488529384802, + "z": 11.633163978655007, + "a": 0, + "b": 10.3448, + "c": 23.2759, + "tcpX": 15.29042230208562, + "tcpY": 15.194488529384802, + "tcpZ": 11.633163978655007 + }, + "runtimeAxisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 10.3448, + "c": 23.2759 + }, + "runtimeTcp": { + "x": 15.29042230208562, + "y": 15.194488529384802, + "z": 11.633163978655007 + }, + "uiExecution": { + "status": "paused", + "sampleIndex": 39, + "sourceFile": "helix_bc.ngc", + "line": 16, + "statement": "g0b#c#", + "joint": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 10.3448, + "c": 23.2759 + }, + "tcp": { + "x": 15.29042230208562, + "y": 15.194488529384802, + "z": 11.633163978655007 + } + }, + "canvasToolhead": { + "x": 0.015, + "y": 0.015, + "z": 0.012 + }, + "canvasToolAxis": { + "x": 0.165, + "y": 0.071, + "z": 0.984 + }, + "pauseButton": { + "action": "pause-resume", + "paused": "true", + "title": "Resume program" + } + }, + { + "label": "pause-hold-2223", + "capturedAt": "2026-07-07T14:52:40.071Z", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "activeLine": 16, + "sampleIndex": 39, + "currentVelocity": 0, + "axisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 10.3448, + "c": 23.2759 + }, + "dro": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 10.3448, + "c": 23.2759, + "tcpX": 10, + "tcpY": 20, + "tcpZ": 10 + }, + "runtimeAxisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 10.3448, + "c": 23.2759 + }, + "runtimeTcp": { + "x": 15.29042230208562, + "y": 15.194488529384802, + "z": 11.633163978655007 + }, + "uiExecution": { + "status": "paused", + "sampleIndex": 39, + "sourceFile": "helix_bc.ngc", + "line": 16, + "statement": "g0b#c#", + "joint": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 10.3448, + "c": 23.2759 + }, + "tcp": { + "x": 15.29042230208562, + "y": 15.194488529384802, + "z": 11.633163978655007 + } + }, + "canvasToolhead": { + "x": 0.015, + "y": 0.015, + "z": 0.012 + }, + "canvasToolAxis": { + "x": 0.165, + "y": 0.071, + "z": 0.984 + }, + "pauseButton": { + "action": "pause-resume", + "paused": "true", + "title": "Resume program" + } + }, + { + "label": "pause-hold-2347", + "capturedAt": "2026-07-07T14:52:40.188Z", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "activeLine": 16, + "sampleIndex": 39, + "currentVelocity": 0, + "axisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 10.3448, + "c": 23.2759 + }, + "dro": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 10.3448, + "c": 23.2759, + "tcpX": 10, + "tcpY": 20, + "tcpZ": 10 + }, + "runtimeAxisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 10.3448, + "c": 23.2759 + }, + "runtimeTcp": { + "x": 15.29042230208562, + "y": 15.194488529384802, + "z": 11.633163978655007 + }, + "uiExecution": { + "status": "paused", + "sampleIndex": 39, + "sourceFile": "helix_bc.ngc", + "line": 16, + "statement": "g0b#c#", + "joint": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 10.3448, + "c": 23.2759 + }, + "tcp": { + "x": 15.29042230208562, + "y": 15.194488529384802, + "z": 11.633163978655007 + } + }, + "canvasToolhead": { + "x": 0.015, + "y": 0.015, + "z": 0.012 + }, + "canvasToolAxis": { + "x": 0.165, + "y": 0.071, + "z": 0.984 + }, + "pauseButton": { + "action": "pause-resume", + "paused": "true", + "title": "Resume program" + } + }, + { + "label": "pause-hold-2463", + "capturedAt": "2026-07-07T14:52:40.308Z", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "activeLine": 16, + "sampleIndex": 39, + "currentVelocity": 0, + "axisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 10.3448, + "c": 23.2759 + }, + "dro": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 10.3448, + "c": 23.2759, + "tcpX": 10, + "tcpY": 20, + "tcpZ": 10 + }, + "runtimeAxisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 10.3448, + "c": 23.2759 + }, + "runtimeTcp": { + "x": 15.29042230208562, + "y": 15.194488529384802, + "z": 11.633163978655007 + }, + "uiExecution": { + "status": "paused", + "sampleIndex": 39, + "sourceFile": "helix_bc.ngc", + "line": 16, + "statement": "g0b#c#", + "joint": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 10.3448, + "c": 23.2759 + }, + "tcp": { + "x": 15.29042230208562, + "y": 15.194488529384802, + "z": 11.633163978655007 + } + }, + "canvasToolhead": { + "x": 0.015, + "y": 0.015, + "z": 0.012 + }, + "canvasToolAxis": { + "x": 0.165, + "y": 0.071, + "z": 0.984 + }, + "pauseButton": { + "action": "pause-resume", + "paused": "true", + "title": "Resume program" + } + }, + { + "label": "pause-hold-2584", + "capturedAt": "2026-07-07T14:52:40.426Z", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "activeLine": 16, + "sampleIndex": 39, + "currentVelocity": 0, + "axisPose": { + "x": 15.29042230208562, + "y": 15.194488529384802, + "z": 11.633163978655007, + "a": 0, + "b": 10.3448, + "c": 23.2759 + }, + "dro": { + "x": 15.29042230208562, + "y": 15.194488529384802, + "z": 11.633163978655007, + "a": 0, + "b": 10.3448, + "c": 23.2759, + "tcpX": 15.29042230208562, + "tcpY": 15.194488529384802, + "tcpZ": 11.633163978655007 + }, + "runtimeAxisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 10.3448, + "c": 23.2759 + }, + "runtimeTcp": { + "x": 15.29042230208562, + "y": 15.194488529384802, + "z": 11.633163978655007 + }, + "uiExecution": { + "status": "paused", + "sampleIndex": 39, + "sourceFile": "helix_bc.ngc", + "line": 16, + "statement": "g0b#c#", + "joint": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 10.3448, + "c": 23.2759 + }, + "tcp": { + "x": 15.29042230208562, + "y": 15.194488529384802, + "z": 11.633163978655007 + } + }, + "canvasToolhead": { + "x": 0.015, + "y": 0.015, + "z": 0.012 + }, + "canvasToolAxis": { + "x": 0.165, + "y": 0.071, + "z": 0.984 + }, + "pauseButton": { + "action": "pause-resume", + "paused": "true", + "title": "Resume program" + } + }, + { + "label": "pause-hold-2702", + "capturedAt": "2026-07-07T14:52:40.544Z", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "activeLine": 16, + "sampleIndex": 39, + "currentVelocity": 0, + "axisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 10.3448, + "c": 23.2759 + }, + "dro": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 10.3448, + "c": 23.2759, + "tcpX": 10, + "tcpY": 20, + "tcpZ": 10 + }, + "runtimeAxisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 10.3448, + "c": 23.2759 + }, + "runtimeTcp": { + "x": 15.29042230208562, + "y": 15.194488529384802, + "z": 11.633163978655007 + }, + "uiExecution": { + "status": "paused", + "sampleIndex": 39, + "sourceFile": "helix_bc.ngc", + "line": 16, + "statement": "g0b#c#", + "joint": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 10.3448, + "c": 23.2759 + }, + "tcp": { + "x": 15.29042230208562, + "y": 15.194488529384802, + "z": 11.633163978655007 + } + }, + "canvasToolhead": { + "x": 0.015, + "y": 0.015, + "z": 0.012 + }, + "canvasToolAxis": { + "x": 0.165, + "y": 0.071, + "z": 0.984 + }, + "pauseButton": { + "action": "pause-resume", + "paused": "true", + "title": "Resume program" + } + }, + { + "label": "pause-hold-2821", + "capturedAt": "2026-07-07T14:52:40.656Z", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "activeLine": 16, + "sampleIndex": 39, + "currentVelocity": 0, + "axisPose": { + "x": 15.29042230208562, + "y": 15.194488529384802, + "z": 11.633163978655007, + "a": 0, + "b": 10.3448, + "c": 23.2759 + }, + "dro": { + "x": 15.29042230208562, + "y": 15.194488529384802, + "z": 11.633163978655007, + "a": 0, + "b": 10.3448, + "c": 23.2759, + "tcpX": 15.29042230208562, + "tcpY": 15.194488529384802, + "tcpZ": 11.633163978655007 + }, + "runtimeAxisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 10.3448, + "c": 23.2759 + }, + "runtimeTcp": { + "x": 15.29042230208562, + "y": 15.194488529384802, + "z": 11.633163978655007 + }, + "uiExecution": { + "status": "paused", + "sampleIndex": 39, + "sourceFile": "helix_bc.ngc", + "line": 16, + "statement": "g0b#c#", + "joint": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 10.3448, + "c": 23.2759 + }, + "tcp": { + "x": 15.29042230208562, + "y": 15.194488529384802, + "z": 11.633163978655007 + } + }, + "canvasToolhead": { + "x": 0.015, + "y": 0.015, + "z": 0.012 + }, + "canvasToolAxis": { + "x": 0.165, + "y": 0.071, + "z": 0.984 + }, + "pauseButton": { + "action": "pause-resume", + "paused": "true", + "title": "Resume program" + } + }, + { + "label": "pause-hold-2934", + "capturedAt": "2026-07-07T14:52:40.790Z", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "activeLine": 16, + "sampleIndex": 39, + "currentVelocity": 0, + "axisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 10.3448, + "c": 23.2759 + }, + "dro": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 10.3448, + "c": 23.2759, + "tcpX": 10, + "tcpY": 20, + "tcpZ": 10 + }, + "runtimeAxisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 10.3448, + "c": 23.2759 + }, + "runtimeTcp": { + "x": 15.29042230208562, + "y": 15.194488529384802, + "z": 11.633163978655007 + }, + "uiExecution": { + "status": "paused", + "sampleIndex": 39, + "sourceFile": "helix_bc.ngc", + "line": 16, + "statement": "g0b#c#", + "joint": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 10.3448, + "c": 23.2759 + }, + "tcp": { + "x": 15.29042230208562, + "y": 15.194488529384802, + "z": 11.633163978655007 + } + }, + "canvasToolhead": { + "x": 0.015, + "y": 0.015, + "z": 0.012 + }, + "canvasToolAxis": { + "x": 0.165, + "y": 0.071, + "z": 0.984 + }, + "pauseButton": { + "action": "pause-resume", + "paused": "true", + "title": "Resume program" + } + }, + { + "label": "pause-hold-3068", + "capturedAt": "2026-07-07T14:52:40.917Z", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "activeLine": 16, + "sampleIndex": 39, + "currentVelocity": 0, + "axisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 10.3448, + "c": 23.2759 + }, + "dro": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 10.3448, + "c": 23.2759, + "tcpX": 10, + "tcpY": 20, + "tcpZ": 10 + }, + "runtimeAxisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 10.3448, + "c": 23.2759 + }, + "runtimeTcp": { + "x": 15.29042230208562, + "y": 15.194488529384802, + "z": 11.633163978655007 + }, + "uiExecution": { + "status": "paused", + "sampleIndex": 39, + "sourceFile": "helix_bc.ngc", + "line": 16, + "statement": "g0b#c#", + "joint": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 10.3448, + "c": 23.2759 + }, + "tcp": { + "x": 15.29042230208562, + "y": 15.194488529384802, + "z": 11.633163978655007 + } + }, + "canvasToolhead": { + "x": 0.015, + "y": 0.015, + "z": 0.012 + }, + "canvasToolAxis": { + "x": 0.165, + "y": 0.071, + "z": 0.984 + }, + "pauseButton": { + "action": "pause-resume", + "paused": "true", + "title": "Resume program" + } + }, + { + "label": "pause-hold-3192", + "capturedAt": "2026-07-07T14:52:41.043Z", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "activeLine": 16, + "sampleIndex": 39, + "currentVelocity": 0, + "axisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 10.3448, + "c": 23.2759 + }, + "dro": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 10.3448, + "c": 23.2759, + "tcpX": 10, + "tcpY": 20, + "tcpZ": 10 + }, + "runtimeAxisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 10.3448, + "c": 23.2759 + }, + "runtimeTcp": { + "x": 15.29042230208562, + "y": 15.194488529384802, + "z": 11.633163978655007 + }, + "uiExecution": { + "status": "paused", + "sampleIndex": 39, + "sourceFile": "helix_bc.ngc", + "line": 16, + "statement": "g0b#c#", + "joint": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 10.3448, + "c": 23.2759 + }, + "tcp": { + "x": 15.29042230208562, + "y": 15.194488529384802, + "z": 11.633163978655007 + } + }, + "canvasToolhead": { + "x": 0.015, + "y": 0.015, + "z": 0.012 + }, + "canvasToolAxis": { + "x": 0.165, + "y": 0.071, + "z": 0.984 + }, + "pauseButton": { + "action": "pause-resume", + "paused": "true", + "title": "Resume program" + } + }, + { + "label": "pause-hold-3319", + "capturedAt": "2026-07-07T14:52:41.166Z", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "activeLine": 16, + "sampleIndex": 39, + "currentVelocity": 0, + "axisPose": { + "x": 15.29042230208562, + "y": 15.194488529384802, + "z": 11.633163978655007, + "a": 0, + "b": 10.3448, + "c": 23.2759 + }, + "dro": { + "x": 15.29042230208562, + "y": 15.194488529384802, + "z": 11.633163978655007, + "a": 0, + "b": 10.3448, + "c": 23.2759, + "tcpX": 15.29042230208562, + "tcpY": 15.194488529384802, + "tcpZ": 11.633163978655007 + }, + "runtimeAxisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 10.3448, + "c": 23.2759 + }, + "runtimeTcp": { + "x": 15.29042230208562, + "y": 15.194488529384802, + "z": 11.633163978655007 + }, + "uiExecution": { + "status": "paused", + "sampleIndex": 39, + "sourceFile": "helix_bc.ngc", + "line": 16, + "statement": "g0b#c#", + "joint": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 10.3448, + "c": 23.2759 + }, + "tcp": { + "x": 15.29042230208562, + "y": 15.194488529384802, + "z": 11.633163978655007 + } + }, + "canvasToolhead": { + "x": 0.015, + "y": 0.015, + "z": 0.012 + }, + "canvasToolAxis": { + "x": 0.165, + "y": 0.071, + "z": 0.984 + }, + "pauseButton": { + "action": "pause-resume", + "paused": "true", + "title": "Resume program" + } + }, + { + "label": "pause-hold-3441", + "capturedAt": "2026-07-07T14:52:41.272Z", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "activeLine": 16, + "sampleIndex": 39, + "currentVelocity": 0, + "axisPose": { + "x": 15.29042230208562, + "y": 15.194488529384802, + "z": 11.633163978655007, + "a": 0, + "b": 10.3448, + "c": 23.2759 + }, + "dro": { + "x": 15.29042230208562, + "y": 15.194488529384802, + "z": 11.633163978655007, + "a": 0, + "b": 10.3448, + "c": 23.2759, + "tcpX": 15.29042230208562, + "tcpY": 15.194488529384802, + "tcpZ": 11.633163978655007 + }, + "runtimeAxisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 10.3448, + "c": 23.2759 + }, + "runtimeTcp": { + "x": 15.29042230208562, + "y": 15.194488529384802, + "z": 11.633163978655007 + }, + "uiExecution": { + "status": "paused", + "sampleIndex": 39, + "sourceFile": "helix_bc.ngc", + "line": 16, + "statement": "g0b#c#", + "joint": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 10.3448, + "c": 23.2759 + }, + "tcp": { + "x": 15.29042230208562, + "y": 15.194488529384802, + "z": 11.633163978655007 + } + }, + "canvasToolhead": { + "x": 0.015, + "y": 0.015, + "z": 0.012 + }, + "canvasToolAxis": { + "x": 0.165, + "y": 0.071, + "z": 0.984 + }, + "pauseButton": { + "action": "pause-resume", + "paused": "true", + "title": "Resume program" + } + }, + { + "label": "pause-hold-3547", + "capturedAt": "2026-07-07T14:52:41.387Z", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "activeLine": 16, + "sampleIndex": 39, + "currentVelocity": 0, + "axisPose": { + "x": 15.29042230208562, + "y": 15.194488529384802, + "z": 11.633163978655007, + "a": 0, + "b": 10.3448, + "c": 23.2759 + }, + "dro": { + "x": 15.29042230208562, + "y": 15.194488529384802, + "z": 11.633163978655007, + "a": 0, + "b": 10.3448, + "c": 23.2759, + "tcpX": 15.29042230208562, + "tcpY": 15.194488529384802, + "tcpZ": 11.633163978655007 + }, + "runtimeAxisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 10.3448, + "c": 23.2759 + }, + "runtimeTcp": { + "x": 15.29042230208562, + "y": 15.194488529384802, + "z": 11.633163978655007 + }, + "uiExecution": { + "status": "paused", + "sampleIndex": 39, + "sourceFile": "helix_bc.ngc", + "line": 16, + "statement": "g0b#c#", + "joint": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 10.3448, + "c": 23.2759 + }, + "tcp": { + "x": 15.29042230208562, + "y": 15.194488529384802, + "z": 11.633163978655007 + } + }, + "canvasToolhead": { + "x": 0.015, + "y": 0.015, + "z": 0.012 + }, + "canvasToolAxis": { + "x": 0.165, + "y": 0.071, + "z": 0.984 + }, + "pauseButton": { + "action": "pause-resume", + "paused": "true", + "title": "Resume program" + } + } + ] +} diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/pause-position-traces/pause-position-20260707T145614Z/trace.json b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/pause-position-traces/pause-position-20260707T145614Z/trace.json new file mode 100644 index 0000000..f1c6b8d --- /dev/null +++ b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/pause-position-traces/pause-position-20260707T145614Z/trace.json @@ -0,0 +1,2793 @@ +{ + "apiName": "xyzbc-trt-pause-position-json-trace", + "status": "failed-position-changed", + "capturedAt": "2026-07-07T14:56:22.590Z", + "appUrlPath": "/web-rtcp-5axis-xyzbc-trt-sim-plan/app/dist/index.html", + "url": "http://127.0.0.1:37765/web-rtcp-5axis-xyzbc-trt-sim-plan/app/dist/index.html", + "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/pause-position-traces/pause-position-20260707T145614Z", + "pauseSelector": "[data-tool-id=\"tbtn_pause\"]", + "analysis": { + "baselineLabel": "pause-start", + "pausedSampleCount": 34, + "changedFields": [ + "runtimeTcp.x", + "runtimeTcp.y", + "runtimeTcp.z", + "uiExecution.tcp.x", + "uiExecution.tcp.y", + "uiExecution.tcp.z", + "canvasToolhead.x", + "canvasToolhead.y", + "canvasToolhead.z" + ], + "positionChangedAfterPause": true + }, + "samples": [ + { + "label": "before-pause", + "capturedAt": "2026-07-07T14:56:18.842Z", + "runState": "running", + "taskState": "on", + "mode": "auto", + "interpState": "reading", + "taskPaused": false, + "activeLine": 16, + "sampleIndex": 42, + "currentVelocity": 203.7696, + "axisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 12.4138, + "c": 27.931 + }, + "dro": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 12.4138, + "c": 27.931, + "tcpX": 10, + "tcpY": 20, + "tcpZ": 10 + }, + "runtimeAxisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 12.4138, + "c": 27.931 + }, + "runtimeTcp": { + "x": 10, + "y": 20, + "z": 10 + }, + "uiExecution": { + "status": "running", + "sampleIndex": 42, + "sourceFile": "helix_bc.ngc", + "line": 16, + "statement": "g0b#c#", + "joint": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 12.4138, + "c": 27.931 + }, + "tcp": { + "x": 10, + "y": 20, + "z": 10 + } + }, + "canvasToolhead": { + "x": 0.01, + "y": 0.02, + "z": 0.01 + }, + "canvasToolAxis": { + "x": 0.19, + "y": 0.101, + "z": 0.977 + }, + "pauseButton": { + "action": "pause-resume", + "paused": "false", + "title": "Pause program" + } + }, + { + "label": "pause-start", + "capturedAt": "2026-07-07T14:56:19.029Z", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "activeLine": 16, + "sampleIndex": 45, + "currentVelocity": 0, + "axisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862 + }, + "dro": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862, + "tcpX": 10, + "tcpY": 20, + "tcpZ": 10 + }, + "runtimeAxisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862 + }, + "runtimeTcp": { + "x": -7.7045530934477, + "y": 8.683473290900483, + "z": -71.34910807134601 + }, + "uiExecution": { + "status": "paused", + "sampleIndex": 45, + "sourceFile": "helix_bc.ngc", + "line": 16, + "statement": "g0b#c#", + "joint": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862 + }, + "tcp": { + "x": -7.7045530934477, + "y": 8.683473290900483, + "z": -71.34910807134601 + } + }, + "canvasToolhead": { + "x": -0.008, + "y": 0.009, + "z": -0.071 + }, + "canvasToolAxis": { + "x": 0.211, + "y": 0.135, + "z": 0.968 + }, + "pauseButton": { + "action": "pause-resume", + "paused": "true", + "title": "Resume program" + } + }, + { + "label": "pause-hold-101", + "capturedAt": "2026-07-07T14:56:19.133Z", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "activeLine": 16, + "sampleIndex": 45, + "currentVelocity": 0, + "axisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862 + }, + "dro": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862, + "tcpX": 10, + "tcpY": 20, + "tcpZ": 10 + }, + "runtimeAxisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862 + }, + "runtimeTcp": { + "x": 10, + "y": 20, + "z": 10 + }, + "uiExecution": { + "status": "paused", + "sampleIndex": 45, + "sourceFile": "helix_bc.ngc", + "line": 16, + "statement": "g0b#c#", + "joint": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862 + }, + "tcp": { + "x": 10, + "y": 20, + "z": 10 + } + }, + "canvasToolhead": { + "x": 0.01, + "y": 0.02, + "z": 0.01 + }, + "canvasToolAxis": { + "x": 0.211, + "y": 0.135, + "z": 0.968 + }, + "pauseButton": { + "action": "pause-resume", + "paused": "true", + "title": "Resume program" + } + }, + { + "label": "pause-hold-206", + "capturedAt": "2026-07-07T14:56:19.244Z", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "activeLine": 16, + "sampleIndex": 45, + "currentVelocity": 0, + "axisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862 + }, + "dro": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862, + "tcpX": 10, + "tcpY": 20, + "tcpZ": 10 + }, + "runtimeAxisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862 + }, + "runtimeTcp": { + "x": 10, + "y": 20, + "z": 10 + }, + "uiExecution": { + "status": "paused", + "sampleIndex": 45, + "sourceFile": "helix_bc.ngc", + "line": 16, + "statement": "g0b#c#", + "joint": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862 + }, + "tcp": { + "x": 10, + "y": 20, + "z": 10 + } + }, + "canvasToolhead": { + "x": 0.01, + "y": 0.02, + "z": 0.01 + }, + "canvasToolAxis": { + "x": 0.211, + "y": 0.135, + "z": 0.968 + }, + "pauseButton": { + "action": "pause-resume", + "paused": "true", + "title": "Resume program" + } + }, + { + "label": "pause-hold-317", + "capturedAt": "2026-07-07T14:56:19.349Z", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "activeLine": 16, + "sampleIndex": 45, + "currentVelocity": 0, + "axisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862 + }, + "dro": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862, + "tcpX": 10, + "tcpY": 20, + "tcpZ": 10 + }, + "runtimeAxisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862 + }, + "runtimeTcp": { + "x": 10, + "y": 20, + "z": 10 + }, + "uiExecution": { + "status": "paused", + "sampleIndex": 45, + "sourceFile": "helix_bc.ngc", + "line": 16, + "statement": "g0b#c#", + "joint": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862 + }, + "tcp": { + "x": 10, + "y": 20, + "z": 10 + } + }, + "canvasToolhead": { + "x": 0.01, + "y": 0.02, + "z": 0.01 + }, + "canvasToolAxis": { + "x": 0.211, + "y": 0.135, + "z": 0.968 + }, + "pauseButton": { + "action": "pause-resume", + "paused": "true", + "title": "Resume program" + } + }, + { + "label": "pause-hold-423", + "capturedAt": "2026-07-07T14:56:19.455Z", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "activeLine": 16, + "sampleIndex": 45, + "currentVelocity": 0, + "axisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862 + }, + "dro": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862, + "tcpX": 10, + "tcpY": 20, + "tcpZ": 10 + }, + "runtimeAxisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862 + }, + "runtimeTcp": { + "x": 10, + "y": 20, + "z": 10 + }, + "uiExecution": { + "status": "paused", + "sampleIndex": 45, + "sourceFile": "helix_bc.ngc", + "line": 16, + "statement": "g0b#c#", + "joint": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862 + }, + "tcp": { + "x": 10, + "y": 20, + "z": 10 + } + }, + "canvasToolhead": { + "x": 0.01, + "y": 0.02, + "z": 0.01 + }, + "canvasToolAxis": { + "x": 0.211, + "y": 0.135, + "z": 0.968 + }, + "pauseButton": { + "action": "pause-resume", + "paused": "true", + "title": "Resume program" + } + }, + { + "label": "pause-hold-529", + "capturedAt": "2026-07-07T14:56:19.566Z", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "activeLine": 16, + "sampleIndex": 45, + "currentVelocity": 0, + "axisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862 + }, + "dro": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862, + "tcpX": 10, + "tcpY": 20, + "tcpZ": 10 + }, + "runtimeAxisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862 + }, + "runtimeTcp": { + "x": 10, + "y": 20, + "z": 10 + }, + "uiExecution": { + "status": "paused", + "sampleIndex": 45, + "sourceFile": "helix_bc.ngc", + "line": 16, + "statement": "g0b#c#", + "joint": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862 + }, + "tcp": { + "x": 10, + "y": 20, + "z": 10 + } + }, + "canvasToolhead": { + "x": 0.01, + "y": 0.02, + "z": 0.01 + }, + "canvasToolAxis": { + "x": 0.211, + "y": 0.135, + "z": 0.968 + }, + "pauseButton": { + "action": "pause-resume", + "paused": "true", + "title": "Resume program" + } + }, + { + "label": "pause-hold-640", + "capturedAt": "2026-07-07T14:56:19.672Z", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "activeLine": 16, + "sampleIndex": 45, + "currentVelocity": 0, + "axisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862 + }, + "dro": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862, + "tcpX": 10, + "tcpY": 20, + "tcpZ": 10 + }, + "runtimeAxisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862 + }, + "runtimeTcp": { + "x": 10, + "y": 20, + "z": 10 + }, + "uiExecution": { + "status": "paused", + "sampleIndex": 45, + "sourceFile": "helix_bc.ngc", + "line": 16, + "statement": "g0b#c#", + "joint": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862 + }, + "tcp": { + "x": 10, + "y": 20, + "z": 10 + } + }, + "canvasToolhead": { + "x": 0.01, + "y": 0.02, + "z": 0.01 + }, + "canvasToolAxis": { + "x": 0.211, + "y": 0.135, + "z": 0.968 + }, + "pauseButton": { + "action": "pause-resume", + "paused": "true", + "title": "Resume program" + } + }, + { + "label": "pause-hold-745", + "capturedAt": "2026-07-07T14:56:19.788Z", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "activeLine": 16, + "sampleIndex": 45, + "currentVelocity": 0, + "axisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862 + }, + "dro": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862, + "tcpX": 10, + "tcpY": 20, + "tcpZ": 10 + }, + "runtimeAxisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862 + }, + "runtimeTcp": { + "x": 10, + "y": 20, + "z": 10 + }, + "uiExecution": { + "status": "paused", + "sampleIndex": 45, + "sourceFile": "helix_bc.ngc", + "line": 16, + "statement": "g0b#c#", + "joint": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862 + }, + "tcp": { + "x": 10, + "y": 20, + "z": 10 + } + }, + "canvasToolhead": { + "x": 0.01, + "y": 0.02, + "z": 0.01 + }, + "canvasToolAxis": { + "x": 0.211, + "y": 0.135, + "z": 0.968 + }, + "pauseButton": { + "action": "pause-resume", + "paused": "true", + "title": "Resume program" + } + }, + { + "label": "pause-hold-863", + "capturedAt": "2026-07-07T14:56:19.894Z", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "activeLine": 16, + "sampleIndex": 45, + "currentVelocity": 0, + "axisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862 + }, + "dro": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862, + "tcpX": 10, + "tcpY": 20, + "tcpZ": 10 + }, + "runtimeAxisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862 + }, + "runtimeTcp": { + "x": 10, + "y": 20, + "z": 10 + }, + "uiExecution": { + "status": "paused", + "sampleIndex": 45, + "sourceFile": "helix_bc.ngc", + "line": 16, + "statement": "g0b#c#", + "joint": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862 + }, + "tcp": { + "x": 10, + "y": 20, + "z": 10 + } + }, + "canvasToolhead": { + "x": 0.01, + "y": 0.02, + "z": 0.01 + }, + "canvasToolAxis": { + "x": 0.211, + "y": 0.135, + "z": 0.968 + }, + "pauseButton": { + "action": "pause-resume", + "paused": "true", + "title": "Resume program" + } + }, + { + "label": "pause-hold-967", + "capturedAt": "2026-07-07T14:56:20.012Z", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "activeLine": 16, + "sampleIndex": 45, + "currentVelocity": 0, + "axisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862 + }, + "dro": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862, + "tcpX": 10, + "tcpY": 20, + "tcpZ": 10 + }, + "runtimeAxisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862 + }, + "runtimeTcp": { + "x": 10, + "y": 20, + "z": 10 + }, + "uiExecution": { + "status": "paused", + "sampleIndex": 45, + "sourceFile": "helix_bc.ngc", + "line": 16, + "statement": "g0b#c#", + "joint": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862 + }, + "tcp": { + "x": 10, + "y": 20, + "z": 10 + } + }, + "canvasToolhead": { + "x": 0.01, + "y": 0.02, + "z": 0.01 + }, + "canvasToolAxis": { + "x": 0.211, + "y": 0.135, + "z": 0.968 + }, + "pauseButton": { + "action": "pause-resume", + "paused": "true", + "title": "Resume program" + } + }, + { + "label": "pause-hold-1086", + "capturedAt": "2026-07-07T14:56:20.118Z", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "activeLine": 16, + "sampleIndex": 45, + "currentVelocity": 0, + "axisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862 + }, + "dro": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862, + "tcpX": 10, + "tcpY": 20, + "tcpZ": 10 + }, + "runtimeAxisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862 + }, + "runtimeTcp": { + "x": 10, + "y": 20, + "z": 10 + }, + "uiExecution": { + "status": "paused", + "sampleIndex": 45, + "sourceFile": "helix_bc.ngc", + "line": 16, + "statement": "g0b#c#", + "joint": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862 + }, + "tcp": { + "x": 10, + "y": 20, + "z": 10 + } + }, + "canvasToolhead": { + "x": 0.01, + "y": 0.02, + "z": 0.01 + }, + "canvasToolAxis": { + "x": 0.211, + "y": 0.135, + "z": 0.968 + }, + "pauseButton": { + "action": "pause-resume", + "paused": "true", + "title": "Resume program" + } + }, + { + "label": "pause-hold-1190", + "capturedAt": "2026-07-07T14:56:20.222Z", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "activeLine": 16, + "sampleIndex": 45, + "currentVelocity": 0, + "axisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862 + }, + "dro": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862, + "tcpX": 10, + "tcpY": 20, + "tcpZ": 10 + }, + "runtimeAxisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862 + }, + "runtimeTcp": { + "x": 10, + "y": 20, + "z": 10 + }, + "uiExecution": { + "status": "paused", + "sampleIndex": 45, + "sourceFile": "helix_bc.ngc", + "line": 16, + "statement": "g0b#c#", + "joint": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862 + }, + "tcp": { + "x": 10, + "y": 20, + "z": 10 + } + }, + "canvasToolhead": { + "x": 0.01, + "y": 0.02, + "z": 0.01 + }, + "canvasToolAxis": { + "x": 0.211, + "y": 0.135, + "z": 0.968 + }, + "pauseButton": { + "action": "pause-resume", + "paused": "true", + "title": "Resume program" + } + }, + { + "label": "pause-hold-1295", + "capturedAt": "2026-07-07T14:56:20.326Z", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "activeLine": 16, + "sampleIndex": 45, + "currentVelocity": 0, + "axisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862 + }, + "dro": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862, + "tcpX": 10, + "tcpY": 20, + "tcpZ": 10 + }, + "runtimeAxisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862 + }, + "runtimeTcp": { + "x": 10, + "y": 20, + "z": 10 + }, + "uiExecution": { + "status": "paused", + "sampleIndex": 45, + "sourceFile": "helix_bc.ngc", + "line": 16, + "statement": "g0b#c#", + "joint": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862 + }, + "tcp": { + "x": 10, + "y": 20, + "z": 10 + } + }, + "canvasToolhead": { + "x": 0.01, + "y": 0.02, + "z": 0.01 + }, + "canvasToolAxis": { + "x": 0.211, + "y": 0.135, + "z": 0.968 + }, + "pauseButton": { + "action": "pause-resume", + "paused": "true", + "title": "Resume program" + } + }, + { + "label": "pause-hold-1400", + "capturedAt": "2026-07-07T14:56:20.431Z", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "activeLine": 16, + "sampleIndex": 45, + "currentVelocity": 0, + "axisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862 + }, + "dro": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862, + "tcpX": 10, + "tcpY": 20, + "tcpZ": 10 + }, + "runtimeAxisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862 + }, + "runtimeTcp": { + "x": 10, + "y": 20, + "z": 10 + }, + "uiExecution": { + "status": "paused", + "sampleIndex": 45, + "sourceFile": "helix_bc.ngc", + "line": 16, + "statement": "g0b#c#", + "joint": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862 + }, + "tcp": { + "x": 10, + "y": 20, + "z": 10 + } + }, + "canvasToolhead": { + "x": 0.01, + "y": 0.02, + "z": 0.01 + }, + "canvasToolAxis": { + "x": 0.211, + "y": 0.135, + "z": 0.968 + }, + "pauseButton": { + "action": "pause-resume", + "paused": "true", + "title": "Resume program" + } + }, + { + "label": "pause-hold-1505", + "capturedAt": "2026-07-07T14:56:20.546Z", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "activeLine": 16, + "sampleIndex": 45, + "currentVelocity": 0, + "axisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862 + }, + "dro": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862, + "tcpX": 10, + "tcpY": 20, + "tcpZ": 10 + }, + "runtimeAxisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862 + }, + "runtimeTcp": { + "x": 10, + "y": 20, + "z": 10 + }, + "uiExecution": { + "status": "paused", + "sampleIndex": 45, + "sourceFile": "helix_bc.ngc", + "line": 16, + "statement": "g0b#c#", + "joint": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862 + }, + "tcp": { + "x": 10, + "y": 20, + "z": 10 + } + }, + "canvasToolhead": { + "x": 0.01, + "y": 0.02, + "z": 0.01 + }, + "canvasToolAxis": { + "x": 0.211, + "y": 0.135, + "z": 0.968 + }, + "pauseButton": { + "action": "pause-resume", + "paused": "true", + "title": "Resume program" + } + }, + { + "label": "pause-hold-1618", + "capturedAt": "2026-07-07T14:56:20.651Z", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "activeLine": 16, + "sampleIndex": 45, + "currentVelocity": 0, + "axisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862 + }, + "dro": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862, + "tcpX": 10, + "tcpY": 20, + "tcpZ": 10 + }, + "runtimeAxisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862 + }, + "runtimeTcp": { + "x": 10, + "y": 20, + "z": 10 + }, + "uiExecution": { + "status": "paused", + "sampleIndex": 45, + "sourceFile": "helix_bc.ngc", + "line": 16, + "statement": "g0b#c#", + "joint": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862 + }, + "tcp": { + "x": 10, + "y": 20, + "z": 10 + } + }, + "canvasToolhead": { + "x": 0.01, + "y": 0.02, + "z": 0.01 + }, + "canvasToolAxis": { + "x": 0.211, + "y": 0.135, + "z": 0.968 + }, + "pauseButton": { + "action": "pause-resume", + "paused": "true", + "title": "Resume program" + } + }, + { + "label": "pause-hold-1723", + "capturedAt": "2026-07-07T14:56:20.755Z", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "activeLine": 16, + "sampleIndex": 45, + "currentVelocity": 0, + "axisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862 + }, + "dro": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862, + "tcpX": 10, + "tcpY": 20, + "tcpZ": 10 + }, + "runtimeAxisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862 + }, + "runtimeTcp": { + "x": 10, + "y": 20, + "z": 10 + }, + "uiExecution": { + "status": "paused", + "sampleIndex": 45, + "sourceFile": "helix_bc.ngc", + "line": 16, + "statement": "g0b#c#", + "joint": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862 + }, + "tcp": { + "x": 10, + "y": 20, + "z": 10 + } + }, + "canvasToolhead": { + "x": 0.01, + "y": 0.02, + "z": 0.01 + }, + "canvasToolAxis": { + "x": 0.211, + "y": 0.135, + "z": 0.968 + }, + "pauseButton": { + "action": "pause-resume", + "paused": "true", + "title": "Resume program" + } + }, + { + "label": "pause-hold-1828", + "capturedAt": "2026-07-07T14:56:20.859Z", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "activeLine": 16, + "sampleIndex": 45, + "currentVelocity": 0, + "axisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862 + }, + "dro": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862, + "tcpX": 10, + "tcpY": 20, + "tcpZ": 10 + }, + "runtimeAxisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862 + }, + "runtimeTcp": { + "x": 10, + "y": 20, + "z": 10 + }, + "uiExecution": { + "status": "paused", + "sampleIndex": 45, + "sourceFile": "helix_bc.ngc", + "line": 16, + "statement": "g0b#c#", + "joint": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862 + }, + "tcp": { + "x": 10, + "y": 20, + "z": 10 + } + }, + "canvasToolhead": { + "x": 0.01, + "y": 0.02, + "z": 0.01 + }, + "canvasToolAxis": { + "x": 0.211, + "y": 0.135, + "z": 0.968 + }, + "pauseButton": { + "action": "pause-resume", + "paused": "true", + "title": "Resume program" + } + }, + { + "label": "pause-hold-1931", + "capturedAt": "2026-07-07T14:56:20.963Z", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "activeLine": 16, + "sampleIndex": 45, + "currentVelocity": 0, + "axisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862 + }, + "dro": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862, + "tcpX": 10, + "tcpY": 20, + "tcpZ": 10 + }, + "runtimeAxisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862 + }, + "runtimeTcp": { + "x": 10, + "y": 20, + "z": 10 + }, + "uiExecution": { + "status": "paused", + "sampleIndex": 45, + "sourceFile": "helix_bc.ngc", + "line": 16, + "statement": "g0b#c#", + "joint": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862 + }, + "tcp": { + "x": 10, + "y": 20, + "z": 10 + } + }, + "canvasToolhead": { + "x": 0.01, + "y": 0.02, + "z": 0.01 + }, + "canvasToolAxis": { + "x": 0.211, + "y": 0.135, + "z": 0.968 + }, + "pauseButton": { + "action": "pause-resume", + "paused": "true", + "title": "Resume program" + } + }, + { + "label": "pause-hold-2036", + "capturedAt": "2026-07-07T14:56:21.077Z", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "activeLine": 16, + "sampleIndex": 45, + "currentVelocity": 0, + "axisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862 + }, + "dro": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862, + "tcpX": 10, + "tcpY": 20, + "tcpZ": 10 + }, + "runtimeAxisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862 + }, + "runtimeTcp": { + "x": 10, + "y": 20, + "z": 10 + }, + "uiExecution": { + "status": "paused", + "sampleIndex": 45, + "sourceFile": "helix_bc.ngc", + "line": 16, + "statement": "g0b#c#", + "joint": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862 + }, + "tcp": { + "x": 10, + "y": 20, + "z": 10 + } + }, + "canvasToolhead": { + "x": 0.01, + "y": 0.02, + "z": 0.01 + }, + "canvasToolAxis": { + "x": 0.211, + "y": 0.135, + "z": 0.968 + }, + "pauseButton": { + "action": "pause-resume", + "paused": "true", + "title": "Resume program" + } + }, + { + "label": "pause-hold-2150", + "capturedAt": "2026-07-07T14:56:21.182Z", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "activeLine": 16, + "sampleIndex": 45, + "currentVelocity": 0, + "axisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862 + }, + "dro": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862, + "tcpX": 10, + "tcpY": 20, + "tcpZ": 10 + }, + "runtimeAxisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862 + }, + "runtimeTcp": { + "x": 10, + "y": 20, + "z": 10 + }, + "uiExecution": { + "status": "paused", + "sampleIndex": 45, + "sourceFile": "helix_bc.ngc", + "line": 16, + "statement": "g0b#c#", + "joint": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862 + }, + "tcp": { + "x": 10, + "y": 20, + "z": 10 + } + }, + "canvasToolhead": { + "x": 0.01, + "y": 0.02, + "z": 0.01 + }, + "canvasToolAxis": { + "x": 0.211, + "y": 0.135, + "z": 0.968 + }, + "pauseButton": { + "action": "pause-resume", + "paused": "true", + "title": "Resume program" + } + }, + { + "label": "pause-hold-2255", + "capturedAt": "2026-07-07T14:56:21.288Z", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "activeLine": 16, + "sampleIndex": 45, + "currentVelocity": 0, + "axisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862 + }, + "dro": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862, + "tcpX": 10, + "tcpY": 20, + "tcpZ": 10 + }, + "runtimeAxisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862 + }, + "runtimeTcp": { + "x": 10, + "y": 20, + "z": 10 + }, + "uiExecution": { + "status": "paused", + "sampleIndex": 45, + "sourceFile": "helix_bc.ngc", + "line": 16, + "statement": "g0b#c#", + "joint": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862 + }, + "tcp": { + "x": 10, + "y": 20, + "z": 10 + } + }, + "canvasToolhead": { + "x": 0.01, + "y": 0.02, + "z": 0.01 + }, + "canvasToolAxis": { + "x": 0.211, + "y": 0.135, + "z": 0.968 + }, + "pauseButton": { + "action": "pause-resume", + "paused": "true", + "title": "Resume program" + } + }, + { + "label": "pause-hold-2361", + "capturedAt": "2026-07-07T14:56:21.400Z", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "activeLine": 16, + "sampleIndex": 45, + "currentVelocity": 0, + "axisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862 + }, + "dro": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862, + "tcpX": 10, + "tcpY": 20, + "tcpZ": 10 + }, + "runtimeAxisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862 + }, + "runtimeTcp": { + "x": 10, + "y": 20, + "z": 10 + }, + "uiExecution": { + "status": "paused", + "sampleIndex": 45, + "sourceFile": "helix_bc.ngc", + "line": 16, + "statement": "g0b#c#", + "joint": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862 + }, + "tcp": { + "x": 10, + "y": 20, + "z": 10 + } + }, + "canvasToolhead": { + "x": 0.01, + "y": 0.02, + "z": 0.01 + }, + "canvasToolAxis": { + "x": 0.211, + "y": 0.135, + "z": 0.968 + }, + "pauseButton": { + "action": "pause-resume", + "paused": "true", + "title": "Resume program" + } + }, + { + "label": "pause-hold-2473", + "capturedAt": "2026-07-07T14:56:21.506Z", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "activeLine": 16, + "sampleIndex": 45, + "currentVelocity": 0, + "axisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862 + }, + "dro": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862, + "tcpX": 10, + "tcpY": 20, + "tcpZ": 10 + }, + "runtimeAxisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862 + }, + "runtimeTcp": { + "x": 10, + "y": 20, + "z": 10 + }, + "uiExecution": { + "status": "paused", + "sampleIndex": 45, + "sourceFile": "helix_bc.ngc", + "line": 16, + "statement": "g0b#c#", + "joint": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862 + }, + "tcp": { + "x": 10, + "y": 20, + "z": 10 + } + }, + "canvasToolhead": { + "x": 0.01, + "y": 0.02, + "z": 0.01 + }, + "canvasToolAxis": { + "x": 0.211, + "y": 0.135, + "z": 0.968 + }, + "pauseButton": { + "action": "pause-resume", + "paused": "true", + "title": "Resume program" + } + }, + { + "label": "pause-hold-2580", + "capturedAt": "2026-07-07T14:56:21.611Z", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "activeLine": 16, + "sampleIndex": 45, + "currentVelocity": 0, + "axisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862 + }, + "dro": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862, + "tcpX": 10, + "tcpY": 20, + "tcpZ": 10 + }, + "runtimeAxisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862 + }, + "runtimeTcp": { + "x": 10, + "y": 20, + "z": 10 + }, + "uiExecution": { + "status": "paused", + "sampleIndex": 45, + "sourceFile": "helix_bc.ngc", + "line": 16, + "statement": "g0b#c#", + "joint": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862 + }, + "tcp": { + "x": 10, + "y": 20, + "z": 10 + } + }, + "canvasToolhead": { + "x": 0.01, + "y": 0.02, + "z": 0.01 + }, + "canvasToolAxis": { + "x": 0.211, + "y": 0.135, + "z": 0.968 + }, + "pauseButton": { + "action": "pause-resume", + "paused": "true", + "title": "Resume program" + } + }, + { + "label": "pause-hold-2684", + "capturedAt": "2026-07-07T14:56:21.719Z", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "activeLine": 16, + "sampleIndex": 45, + "currentVelocity": 0, + "axisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862 + }, + "dro": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862, + "tcpX": 10, + "tcpY": 20, + "tcpZ": 10 + }, + "runtimeAxisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862 + }, + "runtimeTcp": { + "x": 10, + "y": 20, + "z": 10 + }, + "uiExecution": { + "status": "paused", + "sampleIndex": 45, + "sourceFile": "helix_bc.ngc", + "line": 16, + "statement": "g0b#c#", + "joint": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862 + }, + "tcp": { + "x": 10, + "y": 20, + "z": 10 + } + }, + "canvasToolhead": { + "x": 0.01, + "y": 0.02, + "z": 0.01 + }, + "canvasToolAxis": { + "x": 0.211, + "y": 0.135, + "z": 0.968 + }, + "pauseButton": { + "action": "pause-resume", + "paused": "true", + "title": "Resume program" + } + }, + { + "label": "pause-hold-2792", + "capturedAt": "2026-07-07T14:56:21.823Z", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "activeLine": 16, + "sampleIndex": 45, + "currentVelocity": 0, + "axisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862 + }, + "dro": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862, + "tcpX": 10, + "tcpY": 20, + "tcpZ": 10 + }, + "runtimeAxisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862 + }, + "runtimeTcp": { + "x": 10, + "y": 20, + "z": 10 + }, + "uiExecution": { + "status": "paused", + "sampleIndex": 45, + "sourceFile": "helix_bc.ngc", + "line": 16, + "statement": "g0b#c#", + "joint": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862 + }, + "tcp": { + "x": 10, + "y": 20, + "z": 10 + } + }, + "canvasToolhead": { + "x": 0.01, + "y": 0.02, + "z": 0.01 + }, + "canvasToolAxis": { + "x": 0.211, + "y": 0.135, + "z": 0.968 + }, + "pauseButton": { + "action": "pause-resume", + "paused": "true", + "title": "Resume program" + } + }, + { + "label": "pause-hold-2897", + "capturedAt": "2026-07-07T14:56:21.944Z", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "activeLine": 16, + "sampleIndex": 45, + "currentVelocity": 0, + "axisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862 + }, + "dro": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862, + "tcpX": 10, + "tcpY": 20, + "tcpZ": 10 + }, + "runtimeAxisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862 + }, + "runtimeTcp": { + "x": 10, + "y": 20, + "z": 10 + }, + "uiExecution": { + "status": "paused", + "sampleIndex": 45, + "sourceFile": "helix_bc.ngc", + "line": 16, + "statement": "g0b#c#", + "joint": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862 + }, + "tcp": { + "x": 10, + "y": 20, + "z": 10 + } + }, + "canvasToolhead": { + "x": 0.01, + "y": 0.02, + "z": 0.01 + }, + "canvasToolAxis": { + "x": 0.211, + "y": 0.135, + "z": 0.968 + }, + "pauseButton": { + "action": "pause-resume", + "paused": "true", + "title": "Resume program" + } + }, + { + "label": "pause-hold-3017", + "capturedAt": "2026-07-07T14:56:22.049Z", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "activeLine": 16, + "sampleIndex": 45, + "currentVelocity": 0, + "axisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862 + }, + "dro": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862, + "tcpX": 10, + "tcpY": 20, + "tcpZ": 10 + }, + "runtimeAxisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862 + }, + "runtimeTcp": { + "x": 10, + "y": 20, + "z": 10 + }, + "uiExecution": { + "status": "paused", + "sampleIndex": 45, + "sourceFile": "helix_bc.ngc", + "line": 16, + "statement": "g0b#c#", + "joint": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862 + }, + "tcp": { + "x": 10, + "y": 20, + "z": 10 + } + }, + "canvasToolhead": { + "x": 0.01, + "y": 0.02, + "z": 0.01 + }, + "canvasToolAxis": { + "x": 0.211, + "y": 0.135, + "z": 0.968 + }, + "pauseButton": { + "action": "pause-resume", + "paused": "true", + "title": "Resume program" + } + }, + { + "label": "pause-hold-3122", + "capturedAt": "2026-07-07T14:56:22.153Z", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "activeLine": 16, + "sampleIndex": 45, + "currentVelocity": 0, + "axisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862 + }, + "dro": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862, + "tcpX": 10, + "tcpY": 20, + "tcpZ": 10 + }, + "runtimeAxisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862 + }, + "runtimeTcp": { + "x": 10, + "y": 20, + "z": 10 + }, + "uiExecution": { + "status": "paused", + "sampleIndex": 45, + "sourceFile": "helix_bc.ngc", + "line": 16, + "statement": "g0b#c#", + "joint": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862 + }, + "tcp": { + "x": 10, + "y": 20, + "z": 10 + } + }, + "canvasToolhead": { + "x": 0.01, + "y": 0.02, + "z": 0.01 + }, + "canvasToolAxis": { + "x": 0.211, + "y": 0.135, + "z": 0.968 + }, + "pauseButton": { + "action": "pause-resume", + "paused": "true", + "title": "Resume program" + } + }, + { + "label": "pause-hold-3226", + "capturedAt": "2026-07-07T14:56:22.265Z", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "activeLine": 16, + "sampleIndex": 45, + "currentVelocity": 0, + "axisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862 + }, + "dro": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862, + "tcpX": 10, + "tcpY": 20, + "tcpZ": 10 + }, + "runtimeAxisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862 + }, + "runtimeTcp": { + "x": 10, + "y": 20, + "z": 10 + }, + "uiExecution": { + "status": "paused", + "sampleIndex": 45, + "sourceFile": "helix_bc.ngc", + "line": 16, + "statement": "g0b#c#", + "joint": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862 + }, + "tcp": { + "x": 10, + "y": 20, + "z": 10 + } + }, + "canvasToolhead": { + "x": 0.01, + "y": 0.02, + "z": 0.01 + }, + "canvasToolAxis": { + "x": 0.211, + "y": 0.135, + "z": 0.968 + }, + "pauseButton": { + "action": "pause-resume", + "paused": "true", + "title": "Resume program" + } + }, + { + "label": "pause-hold-3338", + "capturedAt": "2026-07-07T14:56:22.370Z", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "activeLine": 16, + "sampleIndex": 45, + "currentVelocity": 0, + "axisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862 + }, + "dro": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862, + "tcpX": 10, + "tcpY": 20, + "tcpZ": 10 + }, + "runtimeAxisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862 + }, + "runtimeTcp": { + "x": 10, + "y": 20, + "z": 10 + }, + "uiExecution": { + "status": "paused", + "sampleIndex": 45, + "sourceFile": "helix_bc.ngc", + "line": 16, + "statement": "g0b#c#", + "joint": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862 + }, + "tcp": { + "x": 10, + "y": 20, + "z": 10 + } + }, + "canvasToolhead": { + "x": 0.01, + "y": 0.02, + "z": 0.01 + }, + "canvasToolAxis": { + "x": 0.211, + "y": 0.135, + "z": 0.968 + }, + "pauseButton": { + "action": "pause-resume", + "paused": "true", + "title": "Resume program" + } + }, + { + "label": "pause-hold-3442", + "capturedAt": "2026-07-07T14:56:22.481Z", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "activeLine": 16, + "sampleIndex": 45, + "currentVelocity": 0, + "axisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862 + }, + "dro": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862, + "tcpX": 10, + "tcpY": 20, + "tcpZ": 10 + }, + "runtimeAxisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862 + }, + "runtimeTcp": { + "x": 10, + "y": 20, + "z": 10 + }, + "uiExecution": { + "status": "paused", + "sampleIndex": 45, + "sourceFile": "helix_bc.ngc", + "line": 16, + "statement": "g0b#c#", + "joint": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862 + }, + "tcp": { + "x": 10, + "y": 20, + "z": 10 + } + }, + "canvasToolhead": { + "x": 0.01, + "y": 0.02, + "z": 0.01 + }, + "canvasToolAxis": { + "x": 0.211, + "y": 0.135, + "z": 0.968 + }, + "pauseButton": { + "action": "pause-resume", + "paused": "true", + "title": "Resume program" + } + }, + { + "label": "pause-hold-3555", + "capturedAt": "2026-07-07T14:56:22.587Z", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "activeLine": 16, + "sampleIndex": 45, + "currentVelocity": 0, + "axisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862 + }, + "dro": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862, + "tcpX": 10, + "tcpY": 20, + "tcpZ": 10 + }, + "runtimeAxisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862 + }, + "runtimeTcp": { + "x": 10, + "y": 20, + "z": 10 + }, + "uiExecution": { + "status": "paused", + "sampleIndex": 45, + "sourceFile": "helix_bc.ngc", + "line": 16, + "statement": "g0b#c#", + "joint": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862 + }, + "tcp": { + "x": 10, + "y": 20, + "z": 10 + } + }, + "canvasToolhead": { + "x": 0.01, + "y": 0.02, + "z": 0.01 + }, + "canvasToolAxis": { + "x": 0.211, + "y": 0.135, + "z": 0.968 + }, + "pauseButton": { + "action": "pause-resume", + "paused": "true", + "title": "Resume program" + } + } + ] +} diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/pause-position-traces/pause-position-20260707T145734Z/trace.json b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/pause-position-traces/pause-position-20260707T145734Z/trace.json new file mode 100644 index 0000000..63cf1fa --- /dev/null +++ b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/pause-position-traces/pause-position-20260707T145734Z/trace.json @@ -0,0 +1,2783 @@ +{ + "apiName": "xyzbc-trt-pause-position-json-trace", + "status": "passed-position-frozen", + "capturedAt": "2026-07-07T14:57:42.487Z", + "appUrlPath": "/web-rtcp-5axis-xyzbc-trt-sim-plan/app/dist/index.html", + "url": "http://127.0.0.1:40913/web-rtcp-5axis-xyzbc-trt-sim-plan/app/dist/index.html", + "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/pause-position-traces/pause-position-20260707T145734Z", + "pauseSelector": "[data-tool-id=\"tbtn_pause\"]", + "analysis": { + "baselineLabel": "pause-start", + "pausedSampleCount": 34, + "changedFields": [], + "positionChangedAfterPause": false + }, + "samples": [ + { + "label": "before-pause", + "capturedAt": "2026-07-07T14:57:38.739Z", + "runState": "running", + "taskState": "on", + "mode": "auto", + "interpState": "reading", + "taskPaused": false, + "activeLine": 16, + "sampleIndex": 42, + "currentVelocity": 203.7696, + "axisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 12.4138, + "c": 27.931 + }, + "dro": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 12.4138, + "c": 27.931, + "tcpX": 10, + "tcpY": 20, + "tcpZ": 10 + }, + "runtimeAxisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 12.4138, + "c": 27.931 + }, + "runtimeTcp": { + "x": 10, + "y": 20, + "z": 10 + }, + "uiExecution": { + "status": "running", + "sampleIndex": 42, + "sourceFile": "helix_bc.ngc", + "line": 16, + "statement": "g0b#c#", + "joint": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 12.4138, + "c": 27.931 + }, + "tcp": { + "x": 10, + "y": 20, + "z": 10 + } + }, + "canvasToolhead": { + "x": 0.01, + "y": 0.02, + "z": 0.01 + }, + "canvasToolAxis": { + "x": 0.19, + "y": 0.101, + "z": 0.977 + }, + "pauseButton": { + "action": "pause-resume", + "paused": "false", + "title": "Pause program" + } + }, + { + "label": "pause-start", + "capturedAt": "2026-07-07T14:57:38.926Z", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "activeLine": 16, + "sampleIndex": 44, + "currentVelocity": 0, + "axisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 13.7931, + "c": 31.0345 + }, + "dro": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 13.7931, + "c": 31.0345, + "tcpX": -7.164145366454296, + "tcpY": 9.672669351662822, + "tcpZ": -71.59614400521104 + }, + "runtimeAxisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 13.7931, + "c": 31.0345 + }, + "runtimeTcp": { + "x": -7.164145366454296, + "y": 9.672669351662822, + "z": -71.59614400521104 + }, + "uiExecution": { + "status": "paused", + "sampleIndex": 44, + "sourceFile": "helix_bc.ngc", + "line": 16, + "statement": "g0b#c#", + "joint": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 13.7931, + "c": 31.0345 + }, + "tcp": { + "x": -7.164145366454296, + "y": 9.672669351662822, + "z": -71.59614400521104 + } + }, + "canvasToolhead": { + "x": -0.007, + "y": 0.01, + "z": -0.072 + }, + "canvasToolAxis": { + "x": 0.204, + "y": 0.123, + "z": 0.971 + }, + "pauseButton": { + "action": "pause-resume", + "paused": "true", + "title": "Resume program" + } + }, + { + "label": "pause-hold-101", + "capturedAt": "2026-07-07T14:57:39.031Z", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "activeLine": 16, + "sampleIndex": 44, + "currentVelocity": 0, + "axisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 13.7931, + "c": 31.0345 + }, + "dro": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 13.7931, + "c": 31.0345, + "tcpX": -7.164145366454296, + "tcpY": 9.672669351662822, + "tcpZ": -71.59614400521104 + }, + "runtimeAxisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 13.7931, + "c": 31.0345 + }, + "runtimeTcp": { + "x": -7.164145366454296, + "y": 9.672669351662822, + "z": -71.59614400521104 + }, + "uiExecution": { + "status": "paused", + "sampleIndex": 44, + "sourceFile": "helix_bc.ngc", + "line": 16, + "statement": "g0b#c#", + "joint": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 13.7931, + "c": 31.0345 + }, + "tcp": { + "x": -7.164145366454296, + "y": 9.672669351662822, + "z": -71.59614400521104 + } + }, + "canvasToolhead": { + "x": -0.007, + "y": 0.01, + "z": -0.072 + }, + "canvasToolAxis": { + "x": 0.204, + "y": 0.123, + "z": 0.971 + }, + "pauseButton": { + "action": "pause-resume", + "paused": "true", + "title": "Resume program" + } + }, + { + "label": "pause-hold-207", + "capturedAt": "2026-07-07T14:57:39.143Z", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "activeLine": 16, + "sampleIndex": 44, + "currentVelocity": 0, + "axisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 13.7931, + "c": 31.0345 + }, + "dro": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 13.7931, + "c": 31.0345, + "tcpX": -7.164145366454296, + "tcpY": 9.672669351662822, + "tcpZ": -71.59614400521104 + }, + "runtimeAxisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 13.7931, + "c": 31.0345 + }, + "runtimeTcp": { + "x": -7.164145366454296, + "y": 9.672669351662822, + "z": -71.59614400521104 + }, + "uiExecution": { + "status": "paused", + "sampleIndex": 44, + "sourceFile": "helix_bc.ngc", + "line": 16, + "statement": "g0b#c#", + "joint": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 13.7931, + "c": 31.0345 + }, + "tcp": { + "x": -7.164145366454296, + "y": 9.672669351662822, + "z": -71.59614400521104 + } + }, + "canvasToolhead": { + "x": -0.007, + "y": 0.01, + "z": -0.072 + }, + "canvasToolAxis": { + "x": 0.204, + "y": 0.123, + "z": 0.971 + }, + "pauseButton": { + "action": "pause-resume", + "paused": "true", + "title": "Resume program" + } + }, + { + "label": "pause-hold-317", + "capturedAt": "2026-07-07T14:57:39.247Z", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "activeLine": 16, + "sampleIndex": 44, + "currentVelocity": 0, + "axisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 13.7931, + "c": 31.0345 + }, + "dro": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 13.7931, + "c": 31.0345, + "tcpX": -7.164145366454296, + "tcpY": 9.672669351662822, + "tcpZ": -71.59614400521104 + }, + "runtimeAxisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 13.7931, + "c": 31.0345 + }, + "runtimeTcp": { + "x": -7.164145366454296, + "y": 9.672669351662822, + "z": -71.59614400521104 + }, + "uiExecution": { + "status": "paused", + "sampleIndex": 44, + "sourceFile": "helix_bc.ngc", + "line": 16, + "statement": "g0b#c#", + "joint": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 13.7931, + "c": 31.0345 + }, + "tcp": { + "x": -7.164145366454296, + "y": 9.672669351662822, + "z": -71.59614400521104 + } + }, + "canvasToolhead": { + "x": -0.007, + "y": 0.01, + "z": -0.072 + }, + "canvasToolAxis": { + "x": 0.204, + "y": 0.123, + "z": 0.971 + }, + "pauseButton": { + "action": "pause-resume", + "paused": "true", + "title": "Resume program" + } + }, + { + "label": "pause-hold-423", + "capturedAt": "2026-07-07T14:57:39.363Z", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "activeLine": 16, + "sampleIndex": 44, + "currentVelocity": 0, + "axisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 13.7931, + "c": 31.0345 + }, + "dro": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 13.7931, + "c": 31.0345, + "tcpX": -7.164145366454296, + "tcpY": 9.672669351662822, + "tcpZ": -71.59614400521104 + }, + "runtimeAxisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 13.7931, + "c": 31.0345 + }, + "runtimeTcp": { + "x": -7.164145366454296, + "y": 9.672669351662822, + "z": -71.59614400521104 + }, + "uiExecution": { + "status": "paused", + "sampleIndex": 44, + "sourceFile": "helix_bc.ngc", + "line": 16, + "statement": "g0b#c#", + "joint": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 13.7931, + "c": 31.0345 + }, + "tcp": { + "x": -7.164145366454296, + "y": 9.672669351662822, + "z": -71.59614400521104 + } + }, + "canvasToolhead": { + "x": -0.007, + "y": 0.01, + "z": -0.072 + }, + "canvasToolAxis": { + "x": 0.204, + "y": 0.123, + "z": 0.971 + }, + "pauseButton": { + "action": "pause-resume", + "paused": "true", + "title": "Resume program" + } + }, + { + "label": "pause-hold-538", + "capturedAt": "2026-07-07T14:57:39.469Z", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "activeLine": 16, + "sampleIndex": 44, + "currentVelocity": 0, + "axisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 13.7931, + "c": 31.0345 + }, + "dro": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 13.7931, + "c": 31.0345, + "tcpX": -7.164145366454296, + "tcpY": 9.672669351662822, + "tcpZ": -71.59614400521104 + }, + "runtimeAxisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 13.7931, + "c": 31.0345 + }, + "runtimeTcp": { + "x": -7.164145366454296, + "y": 9.672669351662822, + "z": -71.59614400521104 + }, + "uiExecution": { + "status": "paused", + "sampleIndex": 44, + "sourceFile": "helix_bc.ngc", + "line": 16, + "statement": "g0b#c#", + "joint": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 13.7931, + "c": 31.0345 + }, + "tcp": { + "x": -7.164145366454296, + "y": 9.672669351662822, + "z": -71.59614400521104 + } + }, + "canvasToolhead": { + "x": -0.007, + "y": 0.01, + "z": -0.072 + }, + "canvasToolAxis": { + "x": 0.204, + "y": 0.123, + "z": 0.971 + }, + "pauseButton": { + "action": "pause-resume", + "paused": "true", + "title": "Resume program" + } + }, + { + "label": "pause-hold-644", + "capturedAt": "2026-07-07T14:57:39.583Z", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "activeLine": 16, + "sampleIndex": 44, + "currentVelocity": 0, + "axisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 13.7931, + "c": 31.0345 + }, + "dro": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 13.7931, + "c": 31.0345, + "tcpX": -7.164145366454296, + "tcpY": 9.672669351662822, + "tcpZ": -71.59614400521104 + }, + "runtimeAxisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 13.7931, + "c": 31.0345 + }, + "runtimeTcp": { + "x": -7.164145366454296, + "y": 9.672669351662822, + "z": -71.59614400521104 + }, + "uiExecution": { + "status": "paused", + "sampleIndex": 44, + "sourceFile": "helix_bc.ngc", + "line": 16, + "statement": "g0b#c#", + "joint": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 13.7931, + "c": 31.0345 + }, + "tcp": { + "x": -7.164145366454296, + "y": 9.672669351662822, + "z": -71.59614400521104 + } + }, + "canvasToolhead": { + "x": -0.007, + "y": 0.01, + "z": -0.072 + }, + "canvasToolAxis": { + "x": 0.204, + "y": 0.123, + "z": 0.971 + }, + "pauseButton": { + "action": "pause-resume", + "paused": "true", + "title": "Resume program" + } + }, + { + "label": "pause-hold-759", + "capturedAt": "2026-07-07T14:57:39.688Z", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "activeLine": 16, + "sampleIndex": 44, + "currentVelocity": 0, + "axisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 13.7931, + "c": 31.0345 + }, + "dro": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 13.7931, + "c": 31.0345, + "tcpX": -7.164145366454296, + "tcpY": 9.672669351662822, + "tcpZ": -71.59614400521104 + }, + "runtimeAxisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 13.7931, + "c": 31.0345 + }, + "runtimeTcp": { + "x": -7.164145366454296, + "y": 9.672669351662822, + "z": -71.59614400521104 + }, + "uiExecution": { + "status": "paused", + "sampleIndex": 44, + "sourceFile": "helix_bc.ngc", + "line": 16, + "statement": "g0b#c#", + "joint": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 13.7931, + "c": 31.0345 + }, + "tcp": { + "x": -7.164145366454296, + "y": 9.672669351662822, + "z": -71.59614400521104 + } + }, + "canvasToolhead": { + "x": -0.007, + "y": 0.01, + "z": -0.072 + }, + "canvasToolAxis": { + "x": 0.204, + "y": 0.123, + "z": 0.971 + }, + "pauseButton": { + "action": "pause-resume", + "paused": "true", + "title": "Resume program" + } + }, + { + "label": "pause-hold-863", + "capturedAt": "2026-07-07T14:57:39.793Z", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "activeLine": 16, + "sampleIndex": 44, + "currentVelocity": 0, + "axisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 13.7931, + "c": 31.0345 + }, + "dro": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 13.7931, + "c": 31.0345, + "tcpX": -7.164145366454296, + "tcpY": 9.672669351662822, + "tcpZ": -71.59614400521104 + }, + "runtimeAxisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 13.7931, + "c": 31.0345 + }, + "runtimeTcp": { + "x": -7.164145366454296, + "y": 9.672669351662822, + "z": -71.59614400521104 + }, + "uiExecution": { + "status": "paused", + "sampleIndex": 44, + "sourceFile": "helix_bc.ngc", + "line": 16, + "statement": "g0b#c#", + "joint": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 13.7931, + "c": 31.0345 + }, + "tcp": { + "x": -7.164145366454296, + "y": 9.672669351662822, + "z": -71.59614400521104 + } + }, + "canvasToolhead": { + "x": -0.007, + "y": 0.01, + "z": -0.072 + }, + "canvasToolAxis": { + "x": 0.204, + "y": 0.123, + "z": 0.971 + }, + "pauseButton": { + "action": "pause-resume", + "paused": "true", + "title": "Resume program" + } + }, + { + "label": "pause-hold-968", + "capturedAt": "2026-07-07T14:57:39.902Z", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "activeLine": 16, + "sampleIndex": 44, + "currentVelocity": 0, + "axisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 13.7931, + "c": 31.0345 + }, + "dro": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 13.7931, + "c": 31.0345, + "tcpX": -7.164145366454296, + "tcpY": 9.672669351662822, + "tcpZ": -71.59614400521104 + }, + "runtimeAxisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 13.7931, + "c": 31.0345 + }, + "runtimeTcp": { + "x": -7.164145366454296, + "y": 9.672669351662822, + "z": -71.59614400521104 + }, + "uiExecution": { + "status": "paused", + "sampleIndex": 44, + "sourceFile": "helix_bc.ngc", + "line": 16, + "statement": "g0b#c#", + "joint": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 13.7931, + "c": 31.0345 + }, + "tcp": { + "x": -7.164145366454296, + "y": 9.672669351662822, + "z": -71.59614400521104 + } + }, + "canvasToolhead": { + "x": -0.007, + "y": 0.01, + "z": -0.072 + }, + "canvasToolAxis": { + "x": 0.204, + "y": 0.123, + "z": 0.971 + }, + "pauseButton": { + "action": "pause-resume", + "paused": "true", + "title": "Resume program" + } + }, + { + "label": "pause-hold-1077", + "capturedAt": "2026-07-07T14:57:40.006Z", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "activeLine": 16, + "sampleIndex": 44, + "currentVelocity": 0, + "axisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 13.7931, + "c": 31.0345 + }, + "dro": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 13.7931, + "c": 31.0345, + "tcpX": -7.164145366454296, + "tcpY": 9.672669351662822, + "tcpZ": -71.59614400521104 + }, + "runtimeAxisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 13.7931, + "c": 31.0345 + }, + "runtimeTcp": { + "x": -7.164145366454296, + "y": 9.672669351662822, + "z": -71.59614400521104 + }, + "uiExecution": { + "status": "paused", + "sampleIndex": 44, + "sourceFile": "helix_bc.ngc", + "line": 16, + "statement": "g0b#c#", + "joint": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 13.7931, + "c": 31.0345 + }, + "tcp": { + "x": -7.164145366454296, + "y": 9.672669351662822, + "z": -71.59614400521104 + } + }, + "canvasToolhead": { + "x": -0.007, + "y": 0.01, + "z": -0.072 + }, + "canvasToolAxis": { + "x": 0.204, + "y": 0.123, + "z": 0.971 + }, + "pauseButton": { + "action": "pause-resume", + "paused": "true", + "title": "Resume program" + } + }, + { + "label": "pause-hold-1182", + "capturedAt": "2026-07-07T14:57:40.111Z", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "activeLine": 16, + "sampleIndex": 44, + "currentVelocity": 0, + "axisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 13.7931, + "c": 31.0345 + }, + "dro": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 13.7931, + "c": 31.0345, + "tcpX": -7.164145366454296, + "tcpY": 9.672669351662822, + "tcpZ": -71.59614400521104 + }, + "runtimeAxisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 13.7931, + "c": 31.0345 + }, + "runtimeTcp": { + "x": -7.164145366454296, + "y": 9.672669351662822, + "z": -71.59614400521104 + }, + "uiExecution": { + "status": "paused", + "sampleIndex": 44, + "sourceFile": "helix_bc.ngc", + "line": 16, + "statement": "g0b#c#", + "joint": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 13.7931, + "c": 31.0345 + }, + "tcp": { + "x": -7.164145366454296, + "y": 9.672669351662822, + "z": -71.59614400521104 + } + }, + "canvasToolhead": { + "x": -0.007, + "y": 0.01, + "z": -0.072 + }, + "canvasToolAxis": { + "x": 0.204, + "y": 0.123, + "z": 0.971 + }, + "pauseButton": { + "action": "pause-resume", + "paused": "true", + "title": "Resume program" + } + }, + { + "label": "pause-hold-1286", + "capturedAt": "2026-07-07T14:57:40.225Z", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "activeLine": 16, + "sampleIndex": 44, + "currentVelocity": 0, + "axisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 13.7931, + "c": 31.0345 + }, + "dro": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 13.7931, + "c": 31.0345, + "tcpX": -7.164145366454296, + "tcpY": 9.672669351662822, + "tcpZ": -71.59614400521104 + }, + "runtimeAxisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 13.7931, + "c": 31.0345 + }, + "runtimeTcp": { + "x": -7.164145366454296, + "y": 9.672669351662822, + "z": -71.59614400521104 + }, + "uiExecution": { + "status": "paused", + "sampleIndex": 44, + "sourceFile": "helix_bc.ngc", + "line": 16, + "statement": "g0b#c#", + "joint": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 13.7931, + "c": 31.0345 + }, + "tcp": { + "x": -7.164145366454296, + "y": 9.672669351662822, + "z": -71.59614400521104 + } + }, + "canvasToolhead": { + "x": -0.007, + "y": 0.01, + "z": -0.072 + }, + "canvasToolAxis": { + "x": 0.204, + "y": 0.123, + "z": 0.971 + }, + "pauseButton": { + "action": "pause-resume", + "paused": "true", + "title": "Resume program" + } + }, + { + "label": "pause-hold-1400", + "capturedAt": "2026-07-07T14:57:40.330Z", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "activeLine": 16, + "sampleIndex": 44, + "currentVelocity": 0, + "axisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 13.7931, + "c": 31.0345 + }, + "dro": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 13.7931, + "c": 31.0345, + "tcpX": -7.164145366454296, + "tcpY": 9.672669351662822, + "tcpZ": -71.59614400521104 + }, + "runtimeAxisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 13.7931, + "c": 31.0345 + }, + "runtimeTcp": { + "x": -7.164145366454296, + "y": 9.672669351662822, + "z": -71.59614400521104 + }, + "uiExecution": { + "status": "paused", + "sampleIndex": 44, + "sourceFile": "helix_bc.ngc", + "line": 16, + "statement": "g0b#c#", + "joint": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 13.7931, + "c": 31.0345 + }, + "tcp": { + "x": -7.164145366454296, + "y": 9.672669351662822, + "z": -71.59614400521104 + } + }, + "canvasToolhead": { + "x": -0.007, + "y": 0.01, + "z": -0.072 + }, + "canvasToolAxis": { + "x": 0.204, + "y": 0.123, + "z": 0.971 + }, + "pauseButton": { + "action": "pause-resume", + "paused": "true", + "title": "Resume program" + } + }, + { + "label": "pause-hold-1505", + "capturedAt": "2026-07-07T14:57:40.435Z", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "activeLine": 16, + "sampleIndex": 44, + "currentVelocity": 0, + "axisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 13.7931, + "c": 31.0345 + }, + "dro": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 13.7931, + "c": 31.0345, + "tcpX": -7.164145366454296, + "tcpY": 9.672669351662822, + "tcpZ": -71.59614400521104 + }, + "runtimeAxisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 13.7931, + "c": 31.0345 + }, + "runtimeTcp": { + "x": -7.164145366454296, + "y": 9.672669351662822, + "z": -71.59614400521104 + }, + "uiExecution": { + "status": "paused", + "sampleIndex": 44, + "sourceFile": "helix_bc.ngc", + "line": 16, + "statement": "g0b#c#", + "joint": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 13.7931, + "c": 31.0345 + }, + "tcp": { + "x": -7.164145366454296, + "y": 9.672669351662822, + "z": -71.59614400521104 + } + }, + "canvasToolhead": { + "x": -0.007, + "y": 0.01, + "z": -0.072 + }, + "canvasToolAxis": { + "x": 0.204, + "y": 0.123, + "z": 0.971 + }, + "pauseButton": { + "action": "pause-resume", + "paused": "true", + "title": "Resume program" + } + }, + { + "label": "pause-hold-1610", + "capturedAt": "2026-07-07T14:57:40.548Z", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "activeLine": 16, + "sampleIndex": 44, + "currentVelocity": 0, + "axisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 13.7931, + "c": 31.0345 + }, + "dro": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 13.7931, + "c": 31.0345, + "tcpX": -7.164145366454296, + "tcpY": 9.672669351662822, + "tcpZ": -71.59614400521104 + }, + "runtimeAxisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 13.7931, + "c": 31.0345 + }, + "runtimeTcp": { + "x": -7.164145366454296, + "y": 9.672669351662822, + "z": -71.59614400521104 + }, + "uiExecution": { + "status": "paused", + "sampleIndex": 44, + "sourceFile": "helix_bc.ngc", + "line": 16, + "statement": "g0b#c#", + "joint": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 13.7931, + "c": 31.0345 + }, + "tcp": { + "x": -7.164145366454296, + "y": 9.672669351662822, + "z": -71.59614400521104 + } + }, + "canvasToolhead": { + "x": -0.007, + "y": 0.01, + "z": -0.072 + }, + "canvasToolAxis": { + "x": 0.204, + "y": 0.123, + "z": 0.971 + }, + "pauseButton": { + "action": "pause-resume", + "paused": "true", + "title": "Resume program" + } + }, + { + "label": "pause-hold-1724", + "capturedAt": "2026-07-07T14:57:40.655Z", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "activeLine": 16, + "sampleIndex": 44, + "currentVelocity": 0, + "axisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 13.7931, + "c": 31.0345 + }, + "dro": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 13.7931, + "c": 31.0345, + "tcpX": -7.164145366454296, + "tcpY": 9.672669351662822, + "tcpZ": -71.59614400521104 + }, + "runtimeAxisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 13.7931, + "c": 31.0345 + }, + "runtimeTcp": { + "x": -7.164145366454296, + "y": 9.672669351662822, + "z": -71.59614400521104 + }, + "uiExecution": { + "status": "paused", + "sampleIndex": 44, + "sourceFile": "helix_bc.ngc", + "line": 16, + "statement": "g0b#c#", + "joint": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 13.7931, + "c": 31.0345 + }, + "tcp": { + "x": -7.164145366454296, + "y": 9.672669351662822, + "z": -71.59614400521104 + } + }, + "canvasToolhead": { + "x": -0.007, + "y": 0.01, + "z": -0.072 + }, + "canvasToolAxis": { + "x": 0.204, + "y": 0.123, + "z": 0.971 + }, + "pauseButton": { + "action": "pause-resume", + "paused": "true", + "title": "Resume program" + } + }, + { + "label": "pause-hold-1830", + "capturedAt": "2026-07-07T14:57:40.760Z", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "activeLine": 16, + "sampleIndex": 44, + "currentVelocity": 0, + "axisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 13.7931, + "c": 31.0345 + }, + "dro": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 13.7931, + "c": 31.0345, + "tcpX": -7.164145366454296, + "tcpY": 9.672669351662822, + "tcpZ": -71.59614400521104 + }, + "runtimeAxisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 13.7931, + "c": 31.0345 + }, + "runtimeTcp": { + "x": -7.164145366454296, + "y": 9.672669351662822, + "z": -71.59614400521104 + }, + "uiExecution": { + "status": "paused", + "sampleIndex": 44, + "sourceFile": "helix_bc.ngc", + "line": 16, + "statement": "g0b#c#", + "joint": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 13.7931, + "c": 31.0345 + }, + "tcp": { + "x": -7.164145366454296, + "y": 9.672669351662822, + "z": -71.59614400521104 + } + }, + "canvasToolhead": { + "x": -0.007, + "y": 0.01, + "z": -0.072 + }, + "canvasToolAxis": { + "x": 0.204, + "y": 0.123, + "z": 0.971 + }, + "pauseButton": { + "action": "pause-resume", + "paused": "true", + "title": "Resume program" + } + }, + { + "label": "pause-hold-1934", + "capturedAt": "2026-07-07T14:57:40.864Z", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "activeLine": 16, + "sampleIndex": 44, + "currentVelocity": 0, + "axisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 13.7931, + "c": 31.0345 + }, + "dro": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 13.7931, + "c": 31.0345, + "tcpX": -7.164145366454296, + "tcpY": 9.672669351662822, + "tcpZ": -71.59614400521104 + }, + "runtimeAxisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 13.7931, + "c": 31.0345 + }, + "runtimeTcp": { + "x": -7.164145366454296, + "y": 9.672669351662822, + "z": -71.59614400521104 + }, + "uiExecution": { + "status": "paused", + "sampleIndex": 44, + "sourceFile": "helix_bc.ngc", + "line": 16, + "statement": "g0b#c#", + "joint": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 13.7931, + "c": 31.0345 + }, + "tcp": { + "x": -7.164145366454296, + "y": 9.672669351662822, + "z": -71.59614400521104 + } + }, + "canvasToolhead": { + "x": -0.007, + "y": 0.01, + "z": -0.072 + }, + "canvasToolAxis": { + "x": 0.204, + "y": 0.123, + "z": 0.971 + }, + "pauseButton": { + "action": "pause-resume", + "paused": "true", + "title": "Resume program" + } + }, + { + "label": "pause-hold-2039", + "capturedAt": "2026-07-07T14:57:40.978Z", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "activeLine": 16, + "sampleIndex": 44, + "currentVelocity": 0, + "axisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 13.7931, + "c": 31.0345 + }, + "dro": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 13.7931, + "c": 31.0345, + "tcpX": -7.164145366454296, + "tcpY": 9.672669351662822, + "tcpZ": -71.59614400521104 + }, + "runtimeAxisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 13.7931, + "c": 31.0345 + }, + "runtimeTcp": { + "x": -7.164145366454296, + "y": 9.672669351662822, + "z": -71.59614400521104 + }, + "uiExecution": { + "status": "paused", + "sampleIndex": 44, + "sourceFile": "helix_bc.ngc", + "line": 16, + "statement": "g0b#c#", + "joint": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 13.7931, + "c": 31.0345 + }, + "tcp": { + "x": -7.164145366454296, + "y": 9.672669351662822, + "z": -71.59614400521104 + } + }, + "canvasToolhead": { + "x": -0.007, + "y": 0.01, + "z": -0.072 + }, + "canvasToolAxis": { + "x": 0.204, + "y": 0.123, + "z": 0.971 + }, + "pauseButton": { + "action": "pause-resume", + "paused": "true", + "title": "Resume program" + } + }, + { + "label": "pause-hold-2154", + "capturedAt": "2026-07-07T14:57:41.084Z", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "activeLine": 16, + "sampleIndex": 44, + "currentVelocity": 0, + "axisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 13.7931, + "c": 31.0345 + }, + "dro": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 13.7931, + "c": 31.0345, + "tcpX": -7.164145366454296, + "tcpY": 9.672669351662822, + "tcpZ": -71.59614400521104 + }, + "runtimeAxisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 13.7931, + "c": 31.0345 + }, + "runtimeTcp": { + "x": -7.164145366454296, + "y": 9.672669351662822, + "z": -71.59614400521104 + }, + "uiExecution": { + "status": "paused", + "sampleIndex": 44, + "sourceFile": "helix_bc.ngc", + "line": 16, + "statement": "g0b#c#", + "joint": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 13.7931, + "c": 31.0345 + }, + "tcp": { + "x": -7.164145366454296, + "y": 9.672669351662822, + "z": -71.59614400521104 + } + }, + "canvasToolhead": { + "x": -0.007, + "y": 0.01, + "z": -0.072 + }, + "canvasToolAxis": { + "x": 0.204, + "y": 0.123, + "z": 0.971 + }, + "pauseButton": { + "action": "pause-resume", + "paused": "true", + "title": "Resume program" + } + }, + { + "label": "pause-hold-2259", + "capturedAt": "2026-07-07T14:57:41.197Z", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "activeLine": 16, + "sampleIndex": 44, + "currentVelocity": 0, + "axisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 13.7931, + "c": 31.0345 + }, + "dro": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 13.7931, + "c": 31.0345, + "tcpX": -7.164145366454296, + "tcpY": 9.672669351662822, + "tcpZ": -71.59614400521104 + }, + "runtimeAxisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 13.7931, + "c": 31.0345 + }, + "runtimeTcp": { + "x": -7.164145366454296, + "y": 9.672669351662822, + "z": -71.59614400521104 + }, + "uiExecution": { + "status": "paused", + "sampleIndex": 44, + "sourceFile": "helix_bc.ngc", + "line": 16, + "statement": "g0b#c#", + "joint": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 13.7931, + "c": 31.0345 + }, + "tcp": { + "x": -7.164145366454296, + "y": 9.672669351662822, + "z": -71.59614400521104 + } + }, + "canvasToolhead": { + "x": -0.007, + "y": 0.01, + "z": -0.072 + }, + "canvasToolAxis": { + "x": 0.204, + "y": 0.123, + "z": 0.971 + }, + "pauseButton": { + "action": "pause-resume", + "paused": "true", + "title": "Resume program" + } + }, + { + "label": "pause-hold-2374", + "capturedAt": "2026-07-07T14:57:41.303Z", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "activeLine": 16, + "sampleIndex": 44, + "currentVelocity": 0, + "axisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 13.7931, + "c": 31.0345 + }, + "dro": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 13.7931, + "c": 31.0345, + "tcpX": -7.164145366454296, + "tcpY": 9.672669351662822, + "tcpZ": -71.59614400521104 + }, + "runtimeAxisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 13.7931, + "c": 31.0345 + }, + "runtimeTcp": { + "x": -7.164145366454296, + "y": 9.672669351662822, + "z": -71.59614400521104 + }, + "uiExecution": { + "status": "paused", + "sampleIndex": 44, + "sourceFile": "helix_bc.ngc", + "line": 16, + "statement": "g0b#c#", + "joint": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 13.7931, + "c": 31.0345 + }, + "tcp": { + "x": -7.164145366454296, + "y": 9.672669351662822, + "z": -71.59614400521104 + } + }, + "canvasToolhead": { + "x": -0.007, + "y": 0.01, + "z": -0.072 + }, + "canvasToolAxis": { + "x": 0.204, + "y": 0.123, + "z": 0.971 + }, + "pauseButton": { + "action": "pause-resume", + "paused": "true", + "title": "Resume program" + } + }, + { + "label": "pause-hold-2477", + "capturedAt": "2026-07-07T14:57:41.406Z", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "activeLine": 16, + "sampleIndex": 44, + "currentVelocity": 0, + "axisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 13.7931, + "c": 31.0345 + }, + "dro": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 13.7931, + "c": 31.0345, + "tcpX": -7.164145366454296, + "tcpY": 9.672669351662822, + "tcpZ": -71.59614400521104 + }, + "runtimeAxisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 13.7931, + "c": 31.0345 + }, + "runtimeTcp": { + "x": -7.164145366454296, + "y": 9.672669351662822, + "z": -71.59614400521104 + }, + "uiExecution": { + "status": "paused", + "sampleIndex": 44, + "sourceFile": "helix_bc.ngc", + "line": 16, + "statement": "g0b#c#", + "joint": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 13.7931, + "c": 31.0345 + }, + "tcp": { + "x": -7.164145366454296, + "y": 9.672669351662822, + "z": -71.59614400521104 + } + }, + "canvasToolhead": { + "x": -0.007, + "y": 0.01, + "z": -0.072 + }, + "canvasToolAxis": { + "x": 0.204, + "y": 0.123, + "z": 0.971 + }, + "pauseButton": { + "action": "pause-resume", + "paused": "true", + "title": "Resume program" + } + }, + { + "label": "pause-hold-2581", + "capturedAt": "2026-07-07T14:57:41.522Z", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "activeLine": 16, + "sampleIndex": 44, + "currentVelocity": 0, + "axisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 13.7931, + "c": 31.0345 + }, + "dro": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 13.7931, + "c": 31.0345, + "tcpX": -7.164145366454296, + "tcpY": 9.672669351662822, + "tcpZ": -71.59614400521104 + }, + "runtimeAxisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 13.7931, + "c": 31.0345 + }, + "runtimeTcp": { + "x": -7.164145366454296, + "y": 9.672669351662822, + "z": -71.59614400521104 + }, + "uiExecution": { + "status": "paused", + "sampleIndex": 44, + "sourceFile": "helix_bc.ngc", + "line": 16, + "statement": "g0b#c#", + "joint": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 13.7931, + "c": 31.0345 + }, + "tcp": { + "x": -7.164145366454296, + "y": 9.672669351662822, + "z": -71.59614400521104 + } + }, + "canvasToolhead": { + "x": -0.007, + "y": 0.01, + "z": -0.072 + }, + "canvasToolAxis": { + "x": 0.204, + "y": 0.123, + "z": 0.971 + }, + "pauseButton": { + "action": "pause-resume", + "paused": "true", + "title": "Resume program" + } + }, + { + "label": "pause-hold-2699", + "capturedAt": "2026-07-07T14:57:41.629Z", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "activeLine": 16, + "sampleIndex": 44, + "currentVelocity": 0, + "axisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 13.7931, + "c": 31.0345 + }, + "dro": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 13.7931, + "c": 31.0345, + "tcpX": -7.164145366454296, + "tcpY": 9.672669351662822, + "tcpZ": -71.59614400521104 + }, + "runtimeAxisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 13.7931, + "c": 31.0345 + }, + "runtimeTcp": { + "x": -7.164145366454296, + "y": 9.672669351662822, + "z": -71.59614400521104 + }, + "uiExecution": { + "status": "paused", + "sampleIndex": 44, + "sourceFile": "helix_bc.ngc", + "line": 16, + "statement": "g0b#c#", + "joint": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 13.7931, + "c": 31.0345 + }, + "tcp": { + "x": -7.164145366454296, + "y": 9.672669351662822, + "z": -71.59614400521104 + } + }, + "canvasToolhead": { + "x": -0.007, + "y": 0.01, + "z": -0.072 + }, + "canvasToolAxis": { + "x": 0.204, + "y": 0.123, + "z": 0.971 + }, + "pauseButton": { + "action": "pause-resume", + "paused": "true", + "title": "Resume program" + } + }, + { + "label": "pause-hold-2804", + "capturedAt": "2026-07-07T14:57:41.744Z", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "activeLine": 16, + "sampleIndex": 44, + "currentVelocity": 0, + "axisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 13.7931, + "c": 31.0345 + }, + "dro": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 13.7931, + "c": 31.0345, + "tcpX": -7.164145366454296, + "tcpY": 9.672669351662822, + "tcpZ": -71.59614400521104 + }, + "runtimeAxisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 13.7931, + "c": 31.0345 + }, + "runtimeTcp": { + "x": -7.164145366454296, + "y": 9.672669351662822, + "z": -71.59614400521104 + }, + "uiExecution": { + "status": "paused", + "sampleIndex": 44, + "sourceFile": "helix_bc.ngc", + "line": 16, + "statement": "g0b#c#", + "joint": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 13.7931, + "c": 31.0345 + }, + "tcp": { + "x": -7.164145366454296, + "y": 9.672669351662822, + "z": -71.59614400521104 + } + }, + "canvasToolhead": { + "x": -0.007, + "y": 0.01, + "z": -0.072 + }, + "canvasToolAxis": { + "x": 0.204, + "y": 0.123, + "z": 0.971 + }, + "pauseButton": { + "action": "pause-resume", + "paused": "true", + "title": "Resume program" + } + }, + { + "label": "pause-hold-2920", + "capturedAt": "2026-07-07T14:57:41.849Z", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "activeLine": 16, + "sampleIndex": 44, + "currentVelocity": 0, + "axisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 13.7931, + "c": 31.0345 + }, + "dro": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 13.7931, + "c": 31.0345, + "tcpX": -7.164145366454296, + "tcpY": 9.672669351662822, + "tcpZ": -71.59614400521104 + }, + "runtimeAxisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 13.7931, + "c": 31.0345 + }, + "runtimeTcp": { + "x": -7.164145366454296, + "y": 9.672669351662822, + "z": -71.59614400521104 + }, + "uiExecution": { + "status": "paused", + "sampleIndex": 44, + "sourceFile": "helix_bc.ngc", + "line": 16, + "statement": "g0b#c#", + "joint": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 13.7931, + "c": 31.0345 + }, + "tcp": { + "x": -7.164145366454296, + "y": 9.672669351662822, + "z": -71.59614400521104 + } + }, + "canvasToolhead": { + "x": -0.007, + "y": 0.01, + "z": -0.072 + }, + "canvasToolAxis": { + "x": 0.204, + "y": 0.123, + "z": 0.971 + }, + "pauseButton": { + "action": "pause-resume", + "paused": "true", + "title": "Resume program" + } + }, + { + "label": "pause-hold-3023", + "capturedAt": "2026-07-07T14:57:41.953Z", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "activeLine": 16, + "sampleIndex": 44, + "currentVelocity": 0, + "axisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 13.7931, + "c": 31.0345 + }, + "dro": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 13.7931, + "c": 31.0345, + "tcpX": -7.164145366454296, + "tcpY": 9.672669351662822, + "tcpZ": -71.59614400521104 + }, + "runtimeAxisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 13.7931, + "c": 31.0345 + }, + "runtimeTcp": { + "x": -7.164145366454296, + "y": 9.672669351662822, + "z": -71.59614400521104 + }, + "uiExecution": { + "status": "paused", + "sampleIndex": 44, + "sourceFile": "helix_bc.ngc", + "line": 16, + "statement": "g0b#c#", + "joint": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 13.7931, + "c": 31.0345 + }, + "tcp": { + "x": -7.164145366454296, + "y": 9.672669351662822, + "z": -71.59614400521104 + } + }, + "canvasToolhead": { + "x": -0.007, + "y": 0.01, + "z": -0.072 + }, + "canvasToolAxis": { + "x": 0.204, + "y": 0.123, + "z": 0.971 + }, + "pauseButton": { + "action": "pause-resume", + "paused": "true", + "title": "Resume program" + } + }, + { + "label": "pause-hold-3127", + "capturedAt": "2026-07-07T14:57:42.059Z", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "activeLine": 16, + "sampleIndex": 44, + "currentVelocity": 0, + "axisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 13.7931, + "c": 31.0345 + }, + "dro": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 13.7931, + "c": 31.0345, + "tcpX": -7.164145366454296, + "tcpY": 9.672669351662822, + "tcpZ": -71.59614400521104 + }, + "runtimeAxisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 13.7931, + "c": 31.0345 + }, + "runtimeTcp": { + "x": -7.164145366454296, + "y": 9.672669351662822, + "z": -71.59614400521104 + }, + "uiExecution": { + "status": "paused", + "sampleIndex": 44, + "sourceFile": "helix_bc.ngc", + "line": 16, + "statement": "g0b#c#", + "joint": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 13.7931, + "c": 31.0345 + }, + "tcp": { + "x": -7.164145366454296, + "y": 9.672669351662822, + "z": -71.59614400521104 + } + }, + "canvasToolhead": { + "x": -0.007, + "y": 0.01, + "z": -0.072 + }, + "canvasToolAxis": { + "x": 0.204, + "y": 0.123, + "z": 0.971 + }, + "pauseButton": { + "action": "pause-resume", + "paused": "true", + "title": "Resume program" + } + }, + { + "label": "pause-hold-3233", + "capturedAt": "2026-07-07T14:57:42.163Z", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "activeLine": 16, + "sampleIndex": 44, + "currentVelocity": 0, + "axisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 13.7931, + "c": 31.0345 + }, + "dro": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 13.7931, + "c": 31.0345, + "tcpX": -7.164145366454296, + "tcpY": 9.672669351662822, + "tcpZ": -71.59614400521104 + }, + "runtimeAxisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 13.7931, + "c": 31.0345 + }, + "runtimeTcp": { + "x": -7.164145366454296, + "y": 9.672669351662822, + "z": -71.59614400521104 + }, + "uiExecution": { + "status": "paused", + "sampleIndex": 44, + "sourceFile": "helix_bc.ngc", + "line": 16, + "statement": "g0b#c#", + "joint": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 13.7931, + "c": 31.0345 + }, + "tcp": { + "x": -7.164145366454296, + "y": 9.672669351662822, + "z": -71.59614400521104 + } + }, + "canvasToolhead": { + "x": -0.007, + "y": 0.01, + "z": -0.072 + }, + "canvasToolAxis": { + "x": 0.204, + "y": 0.123, + "z": 0.971 + }, + "pauseButton": { + "action": "pause-resume", + "paused": "true", + "title": "Resume program" + } + }, + { + "label": "pause-hold-3337", + "capturedAt": "2026-07-07T14:57:42.266Z", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "activeLine": 16, + "sampleIndex": 44, + "currentVelocity": 0, + "axisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 13.7931, + "c": 31.0345 + }, + "dro": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 13.7931, + "c": 31.0345, + "tcpX": -7.164145366454296, + "tcpY": 9.672669351662822, + "tcpZ": -71.59614400521104 + }, + "runtimeAxisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 13.7931, + "c": 31.0345 + }, + "runtimeTcp": { + "x": -7.164145366454296, + "y": 9.672669351662822, + "z": -71.59614400521104 + }, + "uiExecution": { + "status": "paused", + "sampleIndex": 44, + "sourceFile": "helix_bc.ngc", + "line": 16, + "statement": "g0b#c#", + "joint": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 13.7931, + "c": 31.0345 + }, + "tcp": { + "x": -7.164145366454296, + "y": 9.672669351662822, + "z": -71.59614400521104 + } + }, + "canvasToolhead": { + "x": -0.007, + "y": 0.01, + "z": -0.072 + }, + "canvasToolAxis": { + "x": 0.204, + "y": 0.123, + "z": 0.971 + }, + "pauseButton": { + "action": "pause-resume", + "paused": "true", + "title": "Resume program" + } + }, + { + "label": "pause-hold-3442", + "capturedAt": "2026-07-07T14:57:42.379Z", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "activeLine": 16, + "sampleIndex": 44, + "currentVelocity": 0, + "axisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 13.7931, + "c": 31.0345 + }, + "dro": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 13.7931, + "c": 31.0345, + "tcpX": -7.164145366454296, + "tcpY": 9.672669351662822, + "tcpZ": -71.59614400521104 + }, + "runtimeAxisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 13.7931, + "c": 31.0345 + }, + "runtimeTcp": { + "x": -7.164145366454296, + "y": 9.672669351662822, + "z": -71.59614400521104 + }, + "uiExecution": { + "status": "paused", + "sampleIndex": 44, + "sourceFile": "helix_bc.ngc", + "line": 16, + "statement": "g0b#c#", + "joint": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 13.7931, + "c": 31.0345 + }, + "tcp": { + "x": -7.164145366454296, + "y": 9.672669351662822, + "z": -71.59614400521104 + } + }, + "canvasToolhead": { + "x": -0.007, + "y": 0.01, + "z": -0.072 + }, + "canvasToolAxis": { + "x": 0.204, + "y": 0.123, + "z": 0.971 + }, + "pauseButton": { + "action": "pause-resume", + "paused": "true", + "title": "Resume program" + } + }, + { + "label": "pause-hold-3554", + "capturedAt": "2026-07-07T14:57:42.484Z", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "activeLine": 16, + "sampleIndex": 44, + "currentVelocity": 0, + "axisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 13.7931, + "c": 31.0345 + }, + "dro": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 13.7931, + "c": 31.0345, + "tcpX": -7.164145366454296, + "tcpY": 9.672669351662822, + "tcpZ": -71.59614400521104 + }, + "runtimeAxisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 13.7931, + "c": 31.0345 + }, + "runtimeTcp": { + "x": -7.164145366454296, + "y": 9.672669351662822, + "z": -71.59614400521104 + }, + "uiExecution": { + "status": "paused", + "sampleIndex": 44, + "sourceFile": "helix_bc.ngc", + "line": 16, + "statement": "g0b#c#", + "joint": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 13.7931, + "c": 31.0345 + }, + "tcp": { + "x": -7.164145366454296, + "y": 9.672669351662822, + "z": -71.59614400521104 + } + }, + "canvasToolhead": { + "x": -0.007, + "y": 0.01, + "z": -0.072 + }, + "canvasToolAxis": { + "x": 0.204, + "y": 0.123, + "z": 0.971 + }, + "pauseButton": { + "action": "pause-resume", + "paused": "true", + "title": "Resume program" + } + } + ] +} diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/pause-position-traces/pause-position-20260707T150717Z/trace.json b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/pause-position-traces/pause-position-20260707T150717Z/trace.json new file mode 100644 index 0000000..b4026fa --- /dev/null +++ b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/pause-position-traces/pause-position-20260707T150717Z/trace.json @@ -0,0 +1,2783 @@ +{ + "apiName": "xyzbc-trt-pause-position-json-trace", + "status": "passed-position-frozen", + "capturedAt": "2026-07-07T15:07:25.493Z", + "appUrlPath": "/web-rtcp-5axis-xyzbc-trt-sim-plan/app/dist/index.html", + "url": "http://127.0.0.1:38669/web-rtcp-5axis-xyzbc-trt-sim-plan/app/dist/index.html", + "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/pause-position-traces/pause-position-20260707T150717Z", + "pauseSelector": "[data-tool-id=\"tbtn_pause\"]", + "analysis": { + "baselineLabel": "pause-start", + "pausedSampleCount": 34, + "changedFields": [], + "positionChangedAfterPause": false + }, + "samples": [ + { + "label": "before-pause", + "capturedAt": "2026-07-07T15:07:21.675Z", + "runState": "running", + "taskState": "on", + "mode": "auto", + "interpState": "reading", + "taskPaused": false, + "activeLine": 16, + "sampleIndex": 42, + "currentVelocity": 203.7696, + "axisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 12.4138, + "c": 27.931 + }, + "dro": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 12.4138, + "c": 27.931, + "tcpX": -5.957656210970624, + "tcpY": 11.539798421726422, + "tcpZ": -72.05468029617475 + }, + "runtimeAxisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 12.4138, + "c": 27.931 + }, + "runtimeTcp": { + "x": 10, + "y": 20, + "z": 10 + }, + "uiExecution": { + "status": "running", + "sampleIndex": 42, + "sourceFile": "helix_bc.ngc", + "line": 16, + "statement": "g0b#c#", + "joint": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 12.4138, + "c": 27.931 + }, + "tcp": { + "x": 10, + "y": 20, + "z": 10 + } + }, + "canvasToolhead": { + "x": 0.01, + "y": 0.02, + "z": 0.01 + }, + "canvasToolAxis": { + "x": 0.19, + "y": 0.101, + "z": 0.977 + }, + "pauseButton": { + "action": "pause-resume", + "paused": "false", + "title": "Pause program" + } + }, + { + "label": "pause-start", + "capturedAt": "2026-07-07T15:07:21.905Z", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "activeLine": 16, + "sampleIndex": 45, + "currentVelocity": 0, + "axisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862 + }, + "dro": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862, + "tcpX": -7.7045530934477, + "tcpY": 8.683473290900483, + "tcpZ": -71.34910807134601 + }, + "runtimeAxisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862 + }, + "runtimeTcp": { + "x": -7.7045530934477, + "y": 8.683473290900483, + "z": -71.34910807134601 + }, + "uiExecution": { + "status": "paused", + "sampleIndex": 45, + "sourceFile": "helix_bc.ngc", + "line": 16, + "statement": "g0b#c#", + "joint": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862 + }, + "tcp": { + "x": -7.7045530934477, + "y": 8.683473290900483, + "z": -71.34910807134601 + } + }, + "canvasToolhead": { + "x": -0.008, + "y": 0.009, + "z": -0.071 + }, + "canvasToolAxis": { + "x": 0.211, + "y": 0.135, + "z": 0.968 + }, + "pauseButton": { + "action": "pause-resume", + "paused": "true", + "title": "Resume program" + } + }, + { + "label": "pause-hold-102", + "capturedAt": "2026-07-07T15:07:22.015Z", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "activeLine": 16, + "sampleIndex": 45, + "currentVelocity": 0, + "axisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862 + }, + "dro": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862, + "tcpX": -7.7045530934477, + "tcpY": 8.683473290900483, + "tcpZ": -71.34910807134601 + }, + "runtimeAxisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862 + }, + "runtimeTcp": { + "x": -7.7045530934477, + "y": 8.683473290900483, + "z": -71.34910807134601 + }, + "uiExecution": { + "status": "paused", + "sampleIndex": 45, + "sourceFile": "helix_bc.ngc", + "line": 16, + "statement": "g0b#c#", + "joint": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862 + }, + "tcp": { + "x": -7.7045530934477, + "y": 8.683473290900483, + "z": -71.34910807134601 + } + }, + "canvasToolhead": { + "x": -0.008, + "y": 0.009, + "z": -0.071 + }, + "canvasToolAxis": { + "x": 0.211, + "y": 0.135, + "z": 0.968 + }, + "pauseButton": { + "action": "pause-resume", + "paused": "true", + "title": "Resume program" + } + }, + { + "label": "pause-hold-212", + "capturedAt": "2026-07-07T15:07:22.126Z", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "activeLine": 16, + "sampleIndex": 45, + "currentVelocity": 0, + "axisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862 + }, + "dro": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862, + "tcpX": -7.7045530934477, + "tcpY": 8.683473290900483, + "tcpZ": -71.34910807134601 + }, + "runtimeAxisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862 + }, + "runtimeTcp": { + "x": -7.7045530934477, + "y": 8.683473290900483, + "z": -71.34910807134601 + }, + "uiExecution": { + "status": "paused", + "sampleIndex": 45, + "sourceFile": "helix_bc.ngc", + "line": 16, + "statement": "g0b#c#", + "joint": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862 + }, + "tcp": { + "x": -7.7045530934477, + "y": 8.683473290900483, + "z": -71.34910807134601 + } + }, + "canvasToolhead": { + "x": -0.008, + "y": 0.009, + "z": -0.071 + }, + "canvasToolAxis": { + "x": 0.211, + "y": 0.135, + "z": 0.968 + }, + "pauseButton": { + "action": "pause-resume", + "paused": "true", + "title": "Resume program" + } + }, + { + "label": "pause-hold-325", + "capturedAt": "2026-07-07T15:07:22.232Z", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "activeLine": 16, + "sampleIndex": 45, + "currentVelocity": 0, + "axisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862 + }, + "dro": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862, + "tcpX": -7.7045530934477, + "tcpY": 8.683473290900483, + "tcpZ": -71.34910807134601 + }, + "runtimeAxisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862 + }, + "runtimeTcp": { + "x": -7.7045530934477, + "y": 8.683473290900483, + "z": -71.34910807134601 + }, + "uiExecution": { + "status": "paused", + "sampleIndex": 45, + "sourceFile": "helix_bc.ngc", + "line": 16, + "statement": "g0b#c#", + "joint": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862 + }, + "tcp": { + "x": -7.7045530934477, + "y": 8.683473290900483, + "z": -71.34910807134601 + } + }, + "canvasToolhead": { + "x": -0.008, + "y": 0.009, + "z": -0.071 + }, + "canvasToolAxis": { + "x": 0.211, + "y": 0.135, + "z": 0.968 + }, + "pauseButton": { + "action": "pause-resume", + "paused": "true", + "title": "Resume program" + } + }, + { + "label": "pause-hold-430", + "capturedAt": "2026-07-07T15:07:22.338Z", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "activeLine": 16, + "sampleIndex": 45, + "currentVelocity": 0, + "axisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862 + }, + "dro": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862, + "tcpX": -7.7045530934477, + "tcpY": 8.683473290900483, + "tcpZ": -71.34910807134601 + }, + "runtimeAxisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862 + }, + "runtimeTcp": { + "x": -7.7045530934477, + "y": 8.683473290900483, + "z": -71.34910807134601 + }, + "uiExecution": { + "status": "paused", + "sampleIndex": 45, + "sourceFile": "helix_bc.ngc", + "line": 16, + "statement": "g0b#c#", + "joint": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862 + }, + "tcp": { + "x": -7.7045530934477, + "y": 8.683473290900483, + "z": -71.34910807134601 + } + }, + "canvasToolhead": { + "x": -0.008, + "y": 0.009, + "z": -0.071 + }, + "canvasToolAxis": { + "x": 0.211, + "y": 0.135, + "z": 0.968 + }, + "pauseButton": { + "action": "pause-resume", + "paused": "true", + "title": "Resume program" + } + }, + { + "label": "pause-hold-535", + "capturedAt": "2026-07-07T15:07:22.454Z", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "activeLine": 16, + "sampleIndex": 45, + "currentVelocity": 0, + "axisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862 + }, + "dro": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862, + "tcpX": -7.7045530934477, + "tcpY": 8.683473290900483, + "tcpZ": -71.34910807134601 + }, + "runtimeAxisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862 + }, + "runtimeTcp": { + "x": -7.7045530934477, + "y": 8.683473290900483, + "z": -71.34910807134601 + }, + "uiExecution": { + "status": "paused", + "sampleIndex": 45, + "sourceFile": "helix_bc.ngc", + "line": 16, + "statement": "g0b#c#", + "joint": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862 + }, + "tcp": { + "x": -7.7045530934477, + "y": 8.683473290900483, + "z": -71.34910807134601 + } + }, + "canvasToolhead": { + "x": -0.008, + "y": 0.009, + "z": -0.071 + }, + "canvasToolAxis": { + "x": 0.211, + "y": 0.135, + "z": 0.968 + }, + "pauseButton": { + "action": "pause-resume", + "paused": "true", + "title": "Resume program" + } + }, + { + "label": "pause-hold-652", + "capturedAt": "2026-07-07T15:07:22.560Z", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "activeLine": 16, + "sampleIndex": 45, + "currentVelocity": 0, + "axisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862 + }, + "dro": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862, + "tcpX": -7.7045530934477, + "tcpY": 8.683473290900483, + "tcpZ": -71.34910807134601 + }, + "runtimeAxisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862 + }, + "runtimeTcp": { + "x": -7.7045530934477, + "y": 8.683473290900483, + "z": -71.34910807134601 + }, + "uiExecution": { + "status": "paused", + "sampleIndex": 45, + "sourceFile": "helix_bc.ngc", + "line": 16, + "statement": "g0b#c#", + "joint": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862 + }, + "tcp": { + "x": -7.7045530934477, + "y": 8.683473290900483, + "z": -71.34910807134601 + } + }, + "canvasToolhead": { + "x": -0.008, + "y": 0.009, + "z": -0.071 + }, + "canvasToolAxis": { + "x": 0.211, + "y": 0.135, + "z": 0.968 + }, + "pauseButton": { + "action": "pause-resume", + "paused": "true", + "title": "Resume program" + } + }, + { + "label": "pause-hold-756", + "capturedAt": "2026-07-07T15:07:22.664Z", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "activeLine": 16, + "sampleIndex": 45, + "currentVelocity": 0, + "axisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862 + }, + "dro": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862, + "tcpX": -7.7045530934477, + "tcpY": 8.683473290900483, + "tcpZ": -71.34910807134601 + }, + "runtimeAxisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862 + }, + "runtimeTcp": { + "x": -7.7045530934477, + "y": 8.683473290900483, + "z": -71.34910807134601 + }, + "uiExecution": { + "status": "paused", + "sampleIndex": 45, + "sourceFile": "helix_bc.ngc", + "line": 16, + "statement": "g0b#c#", + "joint": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862 + }, + "tcp": { + "x": -7.7045530934477, + "y": 8.683473290900483, + "z": -71.34910807134601 + } + }, + "canvasToolhead": { + "x": -0.008, + "y": 0.009, + "z": -0.071 + }, + "canvasToolAxis": { + "x": 0.211, + "y": 0.135, + "z": 0.968 + }, + "pauseButton": { + "action": "pause-resume", + "paused": "true", + "title": "Resume program" + } + }, + { + "label": "pause-hold-862", + "capturedAt": "2026-07-07T15:07:22.774Z", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "activeLine": 16, + "sampleIndex": 45, + "currentVelocity": 0, + "axisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862 + }, + "dro": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862, + "tcpX": -7.7045530934477, + "tcpY": 8.683473290900483, + "tcpZ": -71.34910807134601 + }, + "runtimeAxisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862 + }, + "runtimeTcp": { + "x": -7.7045530934477, + "y": 8.683473290900483, + "z": -71.34910807134601 + }, + "uiExecution": { + "status": "paused", + "sampleIndex": 45, + "sourceFile": "helix_bc.ngc", + "line": 16, + "statement": "g0b#c#", + "joint": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862 + }, + "tcp": { + "x": -7.7045530934477, + "y": 8.683473290900483, + "z": -71.34910807134601 + } + }, + "canvasToolhead": { + "x": -0.008, + "y": 0.009, + "z": -0.071 + }, + "canvasToolAxis": { + "x": 0.211, + "y": 0.135, + "z": 0.968 + }, + "pauseButton": { + "action": "pause-resume", + "paused": "true", + "title": "Resume program" + } + }, + { + "label": "pause-hold-973", + "capturedAt": "2026-07-07T15:07:22.881Z", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "activeLine": 16, + "sampleIndex": 45, + "currentVelocity": 0, + "axisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862 + }, + "dro": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862, + "tcpX": -7.7045530934477, + "tcpY": 8.683473290900483, + "tcpZ": -71.34910807134601 + }, + "runtimeAxisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862 + }, + "runtimeTcp": { + "x": -7.7045530934477, + "y": 8.683473290900483, + "z": -71.34910807134601 + }, + "uiExecution": { + "status": "paused", + "sampleIndex": 45, + "sourceFile": "helix_bc.ngc", + "line": 16, + "statement": "g0b#c#", + "joint": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862 + }, + "tcp": { + "x": -7.7045530934477, + "y": 8.683473290900483, + "z": -71.34910807134601 + } + }, + "canvasToolhead": { + "x": -0.008, + "y": 0.009, + "z": -0.071 + }, + "canvasToolAxis": { + "x": 0.211, + "y": 0.135, + "z": 0.968 + }, + "pauseButton": { + "action": "pause-resume", + "paused": "true", + "title": "Resume program" + } + }, + { + "label": "pause-hold-1078", + "capturedAt": "2026-07-07T15:07:22.986Z", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "activeLine": 16, + "sampleIndex": 45, + "currentVelocity": 0, + "axisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862 + }, + "dro": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862, + "tcpX": -7.7045530934477, + "tcpY": 8.683473290900483, + "tcpZ": -71.34910807134601 + }, + "runtimeAxisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862 + }, + "runtimeTcp": { + "x": -7.7045530934477, + "y": 8.683473290900483, + "z": -71.34910807134601 + }, + "uiExecution": { + "status": "paused", + "sampleIndex": 45, + "sourceFile": "helix_bc.ngc", + "line": 16, + "statement": "g0b#c#", + "joint": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862 + }, + "tcp": { + "x": -7.7045530934477, + "y": 8.683473290900483, + "z": -71.34910807134601 + } + }, + "canvasToolhead": { + "x": -0.008, + "y": 0.009, + "z": -0.071 + }, + "canvasToolAxis": { + "x": 0.211, + "y": 0.135, + "z": 0.968 + }, + "pauseButton": { + "action": "pause-resume", + "paused": "true", + "title": "Resume program" + } + }, + { + "label": "pause-hold-1185", + "capturedAt": "2026-07-07T15:07:23.099Z", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "activeLine": 16, + "sampleIndex": 45, + "currentVelocity": 0, + "axisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862 + }, + "dro": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862, + "tcpX": -7.7045530934477, + "tcpY": 8.683473290900483, + "tcpZ": -71.34910807134601 + }, + "runtimeAxisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862 + }, + "runtimeTcp": { + "x": -7.7045530934477, + "y": 8.683473290900483, + "z": -71.34910807134601 + }, + "uiExecution": { + "status": "paused", + "sampleIndex": 45, + "sourceFile": "helix_bc.ngc", + "line": 16, + "statement": "g0b#c#", + "joint": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862 + }, + "tcp": { + "x": -7.7045530934477, + "y": 8.683473290900483, + "z": -71.34910807134601 + } + }, + "canvasToolhead": { + "x": -0.008, + "y": 0.009, + "z": -0.071 + }, + "canvasToolAxis": { + "x": 0.211, + "y": 0.135, + "z": 0.968 + }, + "pauseButton": { + "action": "pause-resume", + "paused": "true", + "title": "Resume program" + } + }, + { + "label": "pause-hold-1296", + "capturedAt": "2026-07-07T15:07:23.204Z", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "activeLine": 16, + "sampleIndex": 45, + "currentVelocity": 0, + "axisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862 + }, + "dro": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862, + "tcpX": -7.7045530934477, + "tcpY": 8.683473290900483, + "tcpZ": -71.34910807134601 + }, + "runtimeAxisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862 + }, + "runtimeTcp": { + "x": -7.7045530934477, + "y": 8.683473290900483, + "z": -71.34910807134601 + }, + "uiExecution": { + "status": "paused", + "sampleIndex": 45, + "sourceFile": "helix_bc.ngc", + "line": 16, + "statement": "g0b#c#", + "joint": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862 + }, + "tcp": { + "x": -7.7045530934477, + "y": 8.683473290900483, + "z": -71.34910807134601 + } + }, + "canvasToolhead": { + "x": -0.008, + "y": 0.009, + "z": -0.071 + }, + "canvasToolAxis": { + "x": 0.211, + "y": 0.135, + "z": 0.968 + }, + "pauseButton": { + "action": "pause-resume", + "paused": "true", + "title": "Resume program" + } + }, + { + "label": "pause-hold-1400", + "capturedAt": "2026-07-07T15:07:23.308Z", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "activeLine": 16, + "sampleIndex": 45, + "currentVelocity": 0, + "axisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862 + }, + "dro": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862, + "tcpX": -7.7045530934477, + "tcpY": 8.683473290900483, + "tcpZ": -71.34910807134601 + }, + "runtimeAxisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862 + }, + "runtimeTcp": { + "x": -7.7045530934477, + "y": 8.683473290900483, + "z": -71.34910807134601 + }, + "uiExecution": { + "status": "paused", + "sampleIndex": 45, + "sourceFile": "helix_bc.ngc", + "line": 16, + "statement": "g0b#c#", + "joint": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862 + }, + "tcp": { + "x": -7.7045530934477, + "y": 8.683473290900483, + "z": -71.34910807134601 + } + }, + "canvasToolhead": { + "x": -0.008, + "y": 0.009, + "z": -0.071 + }, + "canvasToolAxis": { + "x": 0.211, + "y": 0.135, + "z": 0.968 + }, + "pauseButton": { + "action": "pause-resume", + "paused": "true", + "title": "Resume program" + } + }, + { + "label": "pause-hold-1506", + "capturedAt": "2026-07-07T15:07:23.418Z", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "activeLine": 16, + "sampleIndex": 45, + "currentVelocity": 0, + "axisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862 + }, + "dro": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862, + "tcpX": -7.7045530934477, + "tcpY": 8.683473290900483, + "tcpZ": -71.34910807134601 + }, + "runtimeAxisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862 + }, + "runtimeTcp": { + "x": -7.7045530934477, + "y": 8.683473290900483, + "z": -71.34910807134601 + }, + "uiExecution": { + "status": "paused", + "sampleIndex": 45, + "sourceFile": "helix_bc.ngc", + "line": 16, + "statement": "g0b#c#", + "joint": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862 + }, + "tcp": { + "x": -7.7045530934477, + "y": 8.683473290900483, + "z": -71.34910807134601 + } + }, + "canvasToolhead": { + "x": -0.008, + "y": 0.009, + "z": -0.071 + }, + "canvasToolAxis": { + "x": 0.211, + "y": 0.135, + "z": 0.968 + }, + "pauseButton": { + "action": "pause-resume", + "paused": "true", + "title": "Resume program" + } + }, + { + "label": "pause-hold-1617", + "capturedAt": "2026-07-07T15:07:23.526Z", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "activeLine": 16, + "sampleIndex": 45, + "currentVelocity": 0, + "axisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862 + }, + "dro": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862, + "tcpX": -7.7045530934477, + "tcpY": 8.683473290900483, + "tcpZ": -71.34910807134601 + }, + "runtimeAxisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862 + }, + "runtimeTcp": { + "x": -7.7045530934477, + "y": 8.683473290900483, + "z": -71.34910807134601 + }, + "uiExecution": { + "status": "paused", + "sampleIndex": 45, + "sourceFile": "helix_bc.ngc", + "line": 16, + "statement": "g0b#c#", + "joint": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862 + }, + "tcp": { + "x": -7.7045530934477, + "y": 8.683473290900483, + "z": -71.34910807134601 + } + }, + "canvasToolhead": { + "x": -0.008, + "y": 0.009, + "z": -0.071 + }, + "canvasToolAxis": { + "x": 0.211, + "y": 0.135, + "z": 0.968 + }, + "pauseButton": { + "action": "pause-resume", + "paused": "true", + "title": "Resume program" + } + }, + { + "label": "pause-hold-1722", + "capturedAt": "2026-07-07T15:07:23.630Z", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "activeLine": 16, + "sampleIndex": 45, + "currentVelocity": 0, + "axisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862 + }, + "dro": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862, + "tcpX": -7.7045530934477, + "tcpY": 8.683473290900483, + "tcpZ": -71.34910807134601 + }, + "runtimeAxisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862 + }, + "runtimeTcp": { + "x": -7.7045530934477, + "y": 8.683473290900483, + "z": -71.34910807134601 + }, + "uiExecution": { + "status": "paused", + "sampleIndex": 45, + "sourceFile": "helix_bc.ngc", + "line": 16, + "statement": "g0b#c#", + "joint": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862 + }, + "tcp": { + "x": -7.7045530934477, + "y": 8.683473290900483, + "z": -71.34910807134601 + } + }, + "canvasToolhead": { + "x": -0.008, + "y": 0.009, + "z": -0.071 + }, + "canvasToolAxis": { + "x": 0.211, + "y": 0.135, + "z": 0.968 + }, + "pauseButton": { + "action": "pause-resume", + "paused": "true", + "title": "Resume program" + } + }, + { + "label": "pause-hold-1826", + "capturedAt": "2026-07-07T15:07:23.733Z", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "activeLine": 16, + "sampleIndex": 45, + "currentVelocity": 0, + "axisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862 + }, + "dro": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862, + "tcpX": -7.7045530934477, + "tcpY": 8.683473290900483, + "tcpZ": -71.34910807134601 + }, + "runtimeAxisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862 + }, + "runtimeTcp": { + "x": -7.7045530934477, + "y": 8.683473290900483, + "z": -71.34910807134601 + }, + "uiExecution": { + "status": "paused", + "sampleIndex": 45, + "sourceFile": "helix_bc.ngc", + "line": 16, + "statement": "g0b#c#", + "joint": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862 + }, + "tcp": { + "x": -7.7045530934477, + "y": 8.683473290900483, + "z": -71.34910807134601 + } + }, + "canvasToolhead": { + "x": -0.008, + "y": 0.009, + "z": -0.071 + }, + "canvasToolAxis": { + "x": 0.211, + "y": 0.135, + "z": 0.968 + }, + "pauseButton": { + "action": "pause-resume", + "paused": "true", + "title": "Resume program" + } + }, + { + "label": "pause-hold-1930", + "capturedAt": "2026-07-07T15:07:23.854Z", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "activeLine": 16, + "sampleIndex": 45, + "currentVelocity": 0, + "axisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862 + }, + "dro": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862, + "tcpX": -7.7045530934477, + "tcpY": 8.683473290900483, + "tcpZ": -71.34910807134601 + }, + "runtimeAxisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862 + }, + "runtimeTcp": { + "x": -7.7045530934477, + "y": 8.683473290900483, + "z": -71.34910807134601 + }, + "uiExecution": { + "status": "paused", + "sampleIndex": 45, + "sourceFile": "helix_bc.ngc", + "line": 16, + "statement": "g0b#c#", + "joint": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862 + }, + "tcp": { + "x": -7.7045530934477, + "y": 8.683473290900483, + "z": -71.34910807134601 + } + }, + "canvasToolhead": { + "x": -0.008, + "y": 0.009, + "z": -0.071 + }, + "canvasToolAxis": { + "x": 0.211, + "y": 0.135, + "z": 0.968 + }, + "pauseButton": { + "action": "pause-resume", + "paused": "true", + "title": "Resume program" + } + }, + { + "label": "pause-hold-2052", + "capturedAt": "2026-07-07T15:07:23.960Z", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "activeLine": 16, + "sampleIndex": 45, + "currentVelocity": 0, + "axisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862 + }, + "dro": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862, + "tcpX": -7.7045530934477, + "tcpY": 8.683473290900483, + "tcpZ": -71.34910807134601 + }, + "runtimeAxisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862 + }, + "runtimeTcp": { + "x": -7.7045530934477, + "y": 8.683473290900483, + "z": -71.34910807134601 + }, + "uiExecution": { + "status": "paused", + "sampleIndex": 45, + "sourceFile": "helix_bc.ngc", + "line": 16, + "statement": "g0b#c#", + "joint": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862 + }, + "tcp": { + "x": -7.7045530934477, + "y": 8.683473290900483, + "z": -71.34910807134601 + } + }, + "canvasToolhead": { + "x": -0.008, + "y": 0.009, + "z": -0.071 + }, + "canvasToolAxis": { + "x": 0.211, + "y": 0.135, + "z": 0.968 + }, + "pauseButton": { + "action": "pause-resume", + "paused": "true", + "title": "Resume program" + } + }, + { + "label": "pause-hold-2155", + "capturedAt": "2026-07-07T15:07:24.073Z", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "activeLine": 16, + "sampleIndex": 45, + "currentVelocity": 0, + "axisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862 + }, + "dro": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862, + "tcpX": -7.7045530934477, + "tcpY": 8.683473290900483, + "tcpZ": -71.34910807134601 + }, + "runtimeAxisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862 + }, + "runtimeTcp": { + "x": -7.7045530934477, + "y": 8.683473290900483, + "z": -71.34910807134601 + }, + "uiExecution": { + "status": "paused", + "sampleIndex": 45, + "sourceFile": "helix_bc.ngc", + "line": 16, + "statement": "g0b#c#", + "joint": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862 + }, + "tcp": { + "x": -7.7045530934477, + "y": 8.683473290900483, + "z": -71.34910807134601 + } + }, + "canvasToolhead": { + "x": -0.008, + "y": 0.009, + "z": -0.071 + }, + "canvasToolAxis": { + "x": 0.211, + "y": 0.135, + "z": 0.968 + }, + "pauseButton": { + "action": "pause-resume", + "paused": "true", + "title": "Resume program" + } + }, + { + "label": "pause-hold-2271", + "capturedAt": "2026-07-07T15:07:24.179Z", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "activeLine": 16, + "sampleIndex": 45, + "currentVelocity": 0, + "axisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862 + }, + "dro": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862, + "tcpX": -7.7045530934477, + "tcpY": 8.683473290900483, + "tcpZ": -71.34910807134601 + }, + "runtimeAxisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862 + }, + "runtimeTcp": { + "x": -7.7045530934477, + "y": 8.683473290900483, + "z": -71.34910807134601 + }, + "uiExecution": { + "status": "paused", + "sampleIndex": 45, + "sourceFile": "helix_bc.ngc", + "line": 16, + "statement": "g0b#c#", + "joint": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862 + }, + "tcp": { + "x": -7.7045530934477, + "y": 8.683473290900483, + "z": -71.34910807134601 + } + }, + "canvasToolhead": { + "x": -0.008, + "y": 0.009, + "z": -0.071 + }, + "canvasToolAxis": { + "x": 0.211, + "y": 0.135, + "z": 0.968 + }, + "pauseButton": { + "action": "pause-resume", + "paused": "true", + "title": "Resume program" + } + }, + { + "label": "pause-hold-2375", + "capturedAt": "2026-07-07T15:07:24.291Z", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "activeLine": 16, + "sampleIndex": 45, + "currentVelocity": 0, + "axisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862 + }, + "dro": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862, + "tcpX": -7.7045530934477, + "tcpY": 8.683473290900483, + "tcpZ": -71.34910807134601 + }, + "runtimeAxisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862 + }, + "runtimeTcp": { + "x": -7.7045530934477, + "y": 8.683473290900483, + "z": -71.34910807134601 + }, + "uiExecution": { + "status": "paused", + "sampleIndex": 45, + "sourceFile": "helix_bc.ngc", + "line": 16, + "statement": "g0b#c#", + "joint": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862 + }, + "tcp": { + "x": -7.7045530934477, + "y": 8.683473290900483, + "z": -71.34910807134601 + } + }, + "canvasToolhead": { + "x": -0.008, + "y": 0.009, + "z": -0.071 + }, + "canvasToolAxis": { + "x": 0.211, + "y": 0.135, + "z": 0.968 + }, + "pauseButton": { + "action": "pause-resume", + "paused": "true", + "title": "Resume program" + } + }, + { + "label": "pause-hold-2487", + "capturedAt": "2026-07-07T15:07:24.395Z", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "activeLine": 16, + "sampleIndex": 45, + "currentVelocity": 0, + "axisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862 + }, + "dro": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862, + "tcpX": -7.7045530934477, + "tcpY": 8.683473290900483, + "tcpZ": -71.34910807134601 + }, + "runtimeAxisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862 + }, + "runtimeTcp": { + "x": -7.7045530934477, + "y": 8.683473290900483, + "z": -71.34910807134601 + }, + "uiExecution": { + "status": "paused", + "sampleIndex": 45, + "sourceFile": "helix_bc.ngc", + "line": 16, + "statement": "g0b#c#", + "joint": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862 + }, + "tcp": { + "x": -7.7045530934477, + "y": 8.683473290900483, + "z": -71.34910807134601 + } + }, + "canvasToolhead": { + "x": -0.008, + "y": 0.009, + "z": -0.071 + }, + "canvasToolAxis": { + "x": 0.211, + "y": 0.135, + "z": 0.968 + }, + "pauseButton": { + "action": "pause-resume", + "paused": "true", + "title": "Resume program" + } + }, + { + "label": "pause-hold-2594", + "capturedAt": "2026-07-07T15:07:24.511Z", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "activeLine": 16, + "sampleIndex": 45, + "currentVelocity": 0, + "axisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862 + }, + "dro": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862, + "tcpX": -7.7045530934477, + "tcpY": 8.683473290900483, + "tcpZ": -71.34910807134601 + }, + "runtimeAxisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862 + }, + "runtimeTcp": { + "x": -7.7045530934477, + "y": 8.683473290900483, + "z": -71.34910807134601 + }, + "uiExecution": { + "status": "paused", + "sampleIndex": 45, + "sourceFile": "helix_bc.ngc", + "line": 16, + "statement": "g0b#c#", + "joint": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862 + }, + "tcp": { + "x": -7.7045530934477, + "y": 8.683473290900483, + "z": -71.34910807134601 + } + }, + "canvasToolhead": { + "x": -0.008, + "y": 0.009, + "z": -0.071 + }, + "canvasToolAxis": { + "x": 0.211, + "y": 0.135, + "z": 0.968 + }, + "pauseButton": { + "action": "pause-resume", + "paused": "true", + "title": "Resume program" + } + }, + { + "label": "pause-hold-2708", + "capturedAt": "2026-07-07T15:07:24.616Z", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "activeLine": 16, + "sampleIndex": 45, + "currentVelocity": 0, + "axisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862 + }, + "dro": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862, + "tcpX": -7.7045530934477, + "tcpY": 8.683473290900483, + "tcpZ": -71.34910807134601 + }, + "runtimeAxisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862 + }, + "runtimeTcp": { + "x": -7.7045530934477, + "y": 8.683473290900483, + "z": -71.34910807134601 + }, + "uiExecution": { + "status": "paused", + "sampleIndex": 45, + "sourceFile": "helix_bc.ngc", + "line": 16, + "statement": "g0b#c#", + "joint": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862 + }, + "tcp": { + "x": -7.7045530934477, + "y": 8.683473290900483, + "z": -71.34910807134601 + } + }, + "canvasToolhead": { + "x": -0.008, + "y": 0.009, + "z": -0.071 + }, + "canvasToolAxis": { + "x": 0.211, + "y": 0.135, + "z": 0.968 + }, + "pauseButton": { + "action": "pause-resume", + "paused": "true", + "title": "Resume program" + } + }, + { + "label": "pause-hold-2814", + "capturedAt": "2026-07-07T15:07:24.730Z", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "activeLine": 16, + "sampleIndex": 45, + "currentVelocity": 0, + "axisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862 + }, + "dro": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862, + "tcpX": -7.7045530934477, + "tcpY": 8.683473290900483, + "tcpZ": -71.34910807134601 + }, + "runtimeAxisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862 + }, + "runtimeTcp": { + "x": -7.7045530934477, + "y": 8.683473290900483, + "z": -71.34910807134601 + }, + "uiExecution": { + "status": "paused", + "sampleIndex": 45, + "sourceFile": "helix_bc.ngc", + "line": 16, + "statement": "g0b#c#", + "joint": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862 + }, + "tcp": { + "x": -7.7045530934477, + "y": 8.683473290900483, + "z": -71.34910807134601 + } + }, + "canvasToolhead": { + "x": -0.008, + "y": 0.009, + "z": -0.071 + }, + "canvasToolAxis": { + "x": 0.211, + "y": 0.135, + "z": 0.968 + }, + "pauseButton": { + "action": "pause-resume", + "paused": "true", + "title": "Resume program" + } + }, + { + "label": "pause-hold-2927", + "capturedAt": "2026-07-07T15:07:24.835Z", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "activeLine": 16, + "sampleIndex": 45, + "currentVelocity": 0, + "axisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862 + }, + "dro": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862, + "tcpX": -7.7045530934477, + "tcpY": 8.683473290900483, + "tcpZ": -71.34910807134601 + }, + "runtimeAxisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862 + }, + "runtimeTcp": { + "x": -7.7045530934477, + "y": 8.683473290900483, + "z": -71.34910807134601 + }, + "uiExecution": { + "status": "paused", + "sampleIndex": 45, + "sourceFile": "helix_bc.ngc", + "line": 16, + "statement": "g0b#c#", + "joint": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862 + }, + "tcp": { + "x": -7.7045530934477, + "y": 8.683473290900483, + "z": -71.34910807134601 + } + }, + "canvasToolhead": { + "x": -0.008, + "y": 0.009, + "z": -0.071 + }, + "canvasToolAxis": { + "x": 0.211, + "y": 0.135, + "z": 0.968 + }, + "pauseButton": { + "action": "pause-resume", + "paused": "true", + "title": "Resume program" + } + }, + { + "label": "pause-hold-3032", + "capturedAt": "2026-07-07T15:07:24.953Z", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "activeLine": 16, + "sampleIndex": 45, + "currentVelocity": 0, + "axisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862 + }, + "dro": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862, + "tcpX": -7.7045530934477, + "tcpY": 8.683473290900483, + "tcpZ": -71.34910807134601 + }, + "runtimeAxisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862 + }, + "runtimeTcp": { + "x": -7.7045530934477, + "y": 8.683473290900483, + "z": -71.34910807134601 + }, + "uiExecution": { + "status": "paused", + "sampleIndex": 45, + "sourceFile": "helix_bc.ngc", + "line": 16, + "statement": "g0b#c#", + "joint": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862 + }, + "tcp": { + "x": -7.7045530934477, + "y": 8.683473290900483, + "z": -71.34910807134601 + } + }, + "canvasToolhead": { + "x": -0.008, + "y": 0.009, + "z": -0.071 + }, + "canvasToolAxis": { + "x": 0.211, + "y": 0.135, + "z": 0.968 + }, + "pauseButton": { + "action": "pause-resume", + "paused": "true", + "title": "Resume program" + } + }, + { + "label": "pause-hold-3150", + "capturedAt": "2026-07-07T15:07:25.058Z", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "activeLine": 16, + "sampleIndex": 45, + "currentVelocity": 0, + "axisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862 + }, + "dro": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862, + "tcpX": -7.7045530934477, + "tcpY": 8.683473290900483, + "tcpZ": -71.34910807134601 + }, + "runtimeAxisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862 + }, + "runtimeTcp": { + "x": -7.7045530934477, + "y": 8.683473290900483, + "z": -71.34910807134601 + }, + "uiExecution": { + "status": "paused", + "sampleIndex": 45, + "sourceFile": "helix_bc.ngc", + "line": 16, + "statement": "g0b#c#", + "joint": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862 + }, + "tcp": { + "x": -7.7045530934477, + "y": 8.683473290900483, + "z": -71.34910807134601 + } + }, + "canvasToolhead": { + "x": -0.008, + "y": 0.009, + "z": -0.071 + }, + "canvasToolAxis": { + "x": 0.211, + "y": 0.135, + "z": 0.968 + }, + "pauseButton": { + "action": "pause-resume", + "paused": "true", + "title": "Resume program" + } + }, + { + "label": "pause-hold-3255", + "capturedAt": "2026-07-07T15:07:25.162Z", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "activeLine": 16, + "sampleIndex": 45, + "currentVelocity": 0, + "axisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862 + }, + "dro": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862, + "tcpX": -7.7045530934477, + "tcpY": 8.683473290900483, + "tcpZ": -71.34910807134601 + }, + "runtimeAxisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862 + }, + "runtimeTcp": { + "x": -7.7045530934477, + "y": 8.683473290900483, + "z": -71.34910807134601 + }, + "uiExecution": { + "status": "paused", + "sampleIndex": 45, + "sourceFile": "helix_bc.ngc", + "line": 16, + "statement": "g0b#c#", + "joint": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862 + }, + "tcp": { + "x": -7.7045530934477, + "y": 8.683473290900483, + "z": -71.34910807134601 + } + }, + "canvasToolhead": { + "x": -0.008, + "y": 0.009, + "z": -0.071 + }, + "canvasToolAxis": { + "x": 0.211, + "y": 0.135, + "z": 0.968 + }, + "pauseButton": { + "action": "pause-resume", + "paused": "true", + "title": "Resume program" + } + }, + { + "label": "pause-hold-3360", + "capturedAt": "2026-07-07T15:07:25.268Z", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "activeLine": 16, + "sampleIndex": 45, + "currentVelocity": 0, + "axisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862 + }, + "dro": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862, + "tcpX": -7.7045530934477, + "tcpY": 8.683473290900483, + "tcpZ": -71.34910807134601 + }, + "runtimeAxisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862 + }, + "runtimeTcp": { + "x": -7.7045530934477, + "y": 8.683473290900483, + "z": -71.34910807134601 + }, + "uiExecution": { + "status": "paused", + "sampleIndex": 45, + "sourceFile": "helix_bc.ngc", + "line": 16, + "statement": "g0b#c#", + "joint": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862 + }, + "tcp": { + "x": -7.7045530934477, + "y": 8.683473290900483, + "z": -71.34910807134601 + } + }, + "canvasToolhead": { + "x": -0.008, + "y": 0.009, + "z": -0.071 + }, + "canvasToolAxis": { + "x": 0.211, + "y": 0.135, + "z": 0.968 + }, + "pauseButton": { + "action": "pause-resume", + "paused": "true", + "title": "Resume program" + } + }, + { + "label": "pause-hold-3465", + "capturedAt": "2026-07-07T15:07:25.373Z", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "activeLine": 16, + "sampleIndex": 45, + "currentVelocity": 0, + "axisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862 + }, + "dro": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862, + "tcpX": -7.7045530934477, + "tcpY": 8.683473290900483, + "tcpZ": -71.34910807134601 + }, + "runtimeAxisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862 + }, + "runtimeTcp": { + "x": -7.7045530934477, + "y": 8.683473290900483, + "z": -71.34910807134601 + }, + "uiExecution": { + "status": "paused", + "sampleIndex": 45, + "sourceFile": "helix_bc.ngc", + "line": 16, + "statement": "g0b#c#", + "joint": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862 + }, + "tcp": { + "x": -7.7045530934477, + "y": 8.683473290900483, + "z": -71.34910807134601 + } + }, + "canvasToolhead": { + "x": -0.008, + "y": 0.009, + "z": -0.071 + }, + "canvasToolAxis": { + "x": 0.211, + "y": 0.135, + "z": 0.968 + }, + "pauseButton": { + "action": "pause-resume", + "paused": "true", + "title": "Resume program" + } + }, + { + "label": "pause-hold-3571", + "capturedAt": "2026-07-07T15:07:25.488Z", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "activeLine": 16, + "sampleIndex": 45, + "currentVelocity": 0, + "axisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862 + }, + "dro": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862, + "tcpX": -7.7045530934477, + "tcpY": 8.683473290900483, + "tcpZ": -71.34910807134601 + }, + "runtimeAxisPose": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862 + }, + "runtimeTcp": { + "x": -7.7045530934477, + "y": 8.683473290900483, + "z": -71.34910807134601 + }, + "uiExecution": { + "status": "paused", + "sampleIndex": 45, + "sourceFile": "helix_bc.ngc", + "line": 16, + "statement": "g0b#c#", + "joint": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 14.4828, + "c": 32.5862 + }, + "tcp": { + "x": -7.7045530934477, + "y": 8.683473290900483, + "z": -71.34910807134601 + } + }, + "canvasToolhead": { + "x": -0.008, + "y": 0.009, + "z": -0.071 + }, + "canvasToolAxis": { + "x": 0.211, + "y": 0.135, + "z": 0.968 + }, + "pauseButton": { + "action": "pause-resume", + "paused": "true", + "title": "Resume program" + } + } + ] +} diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00000-t000076ms-estopped.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00000-t000076ms-estopped.png new file mode 100644 index 0000000..3d5bf8e Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00000-t000076ms-estopped.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00001-t000327ms-estopped.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00001-t000327ms-estopped.png new file mode 100644 index 0000000..07daae8 Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00001-t000327ms-estopped.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00002-t001365ms-idle.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00002-t001365ms-idle.png new file mode 100644 index 0000000..07daae8 Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00002-t001365ms-idle.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00003-t001594ms-idle.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00003-t001594ms-idle.png new file mode 100644 index 0000000..6a92a60 Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00003-t001594ms-idle.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00004-t002654ms-idle.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00004-t002654ms-idle.png new file mode 100644 index 0000000..33027af Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00004-t002654ms-idle.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00005-t003619ms-idle.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00005-t003619ms-idle.png new file mode 100644 index 0000000..33027af Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00005-t003619ms-idle.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00006-t003875ms-idle.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00006-t003875ms-idle.png new file mode 100644 index 0000000..48c42be Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00006-t003875ms-idle.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00007-t010505ms-running.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00007-t010505ms-running.png new file mode 100644 index 0000000..86b6f1b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00007-t010505ms-running.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00008-t010903ms-running.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00008-t010903ms-running.png new file mode 100644 index 0000000..a9c41c9 Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00008-t010903ms-running.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00009-t014761ms-paused.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00009-t014761ms-paused.png new file mode 100644 index 0000000..b1db13b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00009-t014761ms-paused.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00010-t023424ms-paused.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00010-t023424ms-paused.png new file mode 100644 index 0000000..0654589 Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00010-t023424ms-paused.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00011-t023906ms-paused.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00011-t023906ms-paused.png new file mode 100644 index 0000000..950e07d Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00011-t023906ms-paused.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00012-t024277ms-paused.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00012-t024277ms-paused.png new file mode 100644 index 0000000..ddf8801 Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00012-t024277ms-paused.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00013-t024643ms-paused.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00013-t024643ms-paused.png new file mode 100644 index 0000000..57e4d86 Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00013-t024643ms-paused.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00014-t025011ms-paused.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00014-t025011ms-paused.png new file mode 100644 index 0000000..3db0000 Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00014-t025011ms-paused.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00015-t025386ms-paused.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00015-t025386ms-paused.png new file mode 100644 index 0000000..e12903b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00015-t025386ms-paused.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00016-t025773ms-paused.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00016-t025773ms-paused.png new file mode 100644 index 0000000..7c7b323 Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00016-t025773ms-paused.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00017-t026124ms-paused.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00017-t026124ms-paused.png new file mode 100644 index 0000000..ed157c5 Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00017-t026124ms-paused.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00018-t026446ms-paused.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00018-t026446ms-paused.png new file mode 100644 index 0000000..115dc3a Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00018-t026446ms-paused.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00019-t026774ms-paused.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00019-t026774ms-paused.png new file mode 100644 index 0000000..a255573 Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00019-t026774ms-paused.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00020-t027111ms-paused.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00020-t027111ms-paused.png new file mode 100644 index 0000000..0d2781b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00020-t027111ms-paused.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00021-t027423ms-paused.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00021-t027423ms-paused.png new file mode 100644 index 0000000..240e0b0 Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00021-t027423ms-paused.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00022-t027796ms-paused.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00022-t027796ms-paused.png new file mode 100644 index 0000000..9db48a6 Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00022-t027796ms-paused.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00023-t028151ms-paused.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00023-t028151ms-paused.png new file mode 100644 index 0000000..c8ac3be Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00023-t028151ms-paused.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00024-t028512ms-paused.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00024-t028512ms-paused.png new file mode 100644 index 0000000..7cc3dbc Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00024-t028512ms-paused.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00025-t028840ms-paused.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00025-t028840ms-paused.png new file mode 100644 index 0000000..51ff329 Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00025-t028840ms-paused.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00026-t029183ms-paused.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00026-t029183ms-paused.png new file mode 100644 index 0000000..3324dc1 Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00026-t029183ms-paused.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00027-t029517ms-paused.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00027-t029517ms-paused.png new file mode 100644 index 0000000..e19ac71 Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00027-t029517ms-paused.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00028-t029848ms-paused.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00028-t029848ms-paused.png new file mode 100644 index 0000000..8eedbd0 Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00028-t029848ms-paused.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00029-t030181ms-paused.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00029-t030181ms-paused.png new file mode 100644 index 0000000..18ccb61 Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00029-t030181ms-paused.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00030-t030530ms-paused.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00030-t030530ms-paused.png new file mode 100644 index 0000000..db86a60 Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00030-t030530ms-paused.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00031-t030862ms-paused.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00031-t030862ms-paused.png new file mode 100644 index 0000000..b4f3de1 Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00031-t030862ms-paused.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00032-t031199ms-paused.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00032-t031199ms-paused.png new file mode 100644 index 0000000..059cfa1 Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00032-t031199ms-paused.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00033-t031543ms-paused.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00033-t031543ms-paused.png new file mode 100644 index 0000000..0394b8d Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00033-t031543ms-paused.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00034-t031873ms-paused.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00034-t031873ms-paused.png new file mode 100644 index 0000000..49bdc8b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00034-t031873ms-paused.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00035-t032225ms-paused.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00035-t032225ms-paused.png new file mode 100644 index 0000000..4b3bff6 Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00035-t032225ms-paused.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00036-t032575ms-paused.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00036-t032575ms-paused.png new file mode 100644 index 0000000..9a8c10f Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00036-t032575ms-paused.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00037-t032911ms-paused.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00037-t032911ms-paused.png new file mode 100644 index 0000000..2c3aa7e Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00037-t032911ms-paused.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00038-t033242ms-paused.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00038-t033242ms-paused.png new file mode 100644 index 0000000..aafa7c2 Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00038-t033242ms-paused.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00039-t033580ms-paused.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00039-t033580ms-paused.png new file mode 100644 index 0000000..ef8bd7b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00039-t033580ms-paused.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00040-t033937ms-paused.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00040-t033937ms-paused.png new file mode 100644 index 0000000..b679ab2 Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00040-t033937ms-paused.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00041-t034258ms-paused.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00041-t034258ms-paused.png new file mode 100644 index 0000000..949a130 Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00041-t034258ms-paused.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00042-t034689ms-paused.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00042-t034689ms-paused.png new file mode 100644 index 0000000..41643aa Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00042-t034689ms-paused.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00043-t035033ms-paused.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00043-t035033ms-paused.png new file mode 100644 index 0000000..2fa5f0c Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00043-t035033ms-paused.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00044-t035436ms-paused.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00044-t035436ms-paused.png new file mode 100644 index 0000000..f9f8a10 Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00044-t035436ms-paused.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00045-t035803ms-paused.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00045-t035803ms-paused.png new file mode 100644 index 0000000..80f5f7e Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00045-t035803ms-paused.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00046-t036180ms-paused.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00046-t036180ms-paused.png new file mode 100644 index 0000000..cdc52d4 Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00046-t036180ms-paused.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00047-t036535ms-paused.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00047-t036535ms-paused.png new file mode 100644 index 0000000..e64980f Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00047-t036535ms-paused.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00048-t036891ms-paused.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00048-t036891ms-paused.png new file mode 100644 index 0000000..1d05da1 Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00048-t036891ms-paused.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00049-t037233ms-paused.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00049-t037233ms-paused.png new file mode 100644 index 0000000..c281565 Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00049-t037233ms-paused.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00050-t037611ms-paused.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00050-t037611ms-paused.png new file mode 100644 index 0000000..67b0c0d Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00050-t037611ms-paused.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00051-t037959ms-paused.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00051-t037959ms-paused.png new file mode 100644 index 0000000..0b3ebbf Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00051-t037959ms-paused.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00052-t038292ms-paused.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00052-t038292ms-paused.png new file mode 100644 index 0000000..01ed02c Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00052-t038292ms-paused.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00053-t038685ms-paused.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00053-t038685ms-paused.png new file mode 100644 index 0000000..8336311 Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00053-t038685ms-paused.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00054-t038992ms-paused.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00054-t038992ms-paused.png new file mode 100644 index 0000000..7356fef Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00054-t038992ms-paused.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00055-t039366ms-paused.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00055-t039366ms-paused.png new file mode 100644 index 0000000..0fe2ee2 Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00055-t039366ms-paused.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00056-t039705ms-paused.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00056-t039705ms-paused.png new file mode 100644 index 0000000..85af69e Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00056-t039705ms-paused.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00057-t040080ms-paused.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00057-t040080ms-paused.png new file mode 100644 index 0000000..d949aca Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00057-t040080ms-paused.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00058-t040437ms-paused.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00058-t040437ms-paused.png new file mode 100644 index 0000000..b21cee5 Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00058-t040437ms-paused.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00059-t040765ms-paused.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00059-t040765ms-paused.png new file mode 100644 index 0000000..fd43fe7 Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00059-t040765ms-paused.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00060-t041055ms-paused.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00060-t041055ms-paused.png new file mode 100644 index 0000000..e3e8300 Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00060-t041055ms-paused.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00061-t041374ms-paused.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00061-t041374ms-paused.png new file mode 100644 index 0000000..91161d2 Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00061-t041374ms-paused.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00062-t041728ms-paused.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00062-t041728ms-paused.png new file mode 100644 index 0000000..a2f0696 Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00062-t041728ms-paused.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00063-t042087ms-paused.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00063-t042087ms-paused.png new file mode 100644 index 0000000..acd6b3b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00063-t042087ms-paused.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00064-t042537ms-paused.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00064-t042537ms-paused.png new file mode 100644 index 0000000..9a515b0 Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00064-t042537ms-paused.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00065-t042920ms-paused.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00065-t042920ms-paused.png new file mode 100644 index 0000000..d5b90dc Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00065-t042920ms-paused.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00066-t043344ms-paused.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00066-t043344ms-paused.png new file mode 100644 index 0000000..14b189e Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00066-t043344ms-paused.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00067-t043749ms-paused.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00067-t043749ms-paused.png new file mode 100644 index 0000000..d99597c Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00067-t043749ms-paused.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00068-t044171ms-paused.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00068-t044171ms-paused.png new file mode 100644 index 0000000..725d00e Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00068-t044171ms-paused.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00069-t044550ms-paused.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00069-t044550ms-paused.png new file mode 100644 index 0000000..0db9ae4 Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00069-t044550ms-paused.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00070-t044871ms-paused.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00070-t044871ms-paused.png new file mode 100644 index 0000000..4d1cb7c Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00070-t044871ms-paused.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00071-t045240ms-paused.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00071-t045240ms-paused.png new file mode 100644 index 0000000..1f4dbc7 Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00071-t045240ms-paused.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00072-t045563ms-paused.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00072-t045563ms-paused.png new file mode 100644 index 0000000..568bc4c Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00072-t045563ms-paused.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00073-t045871ms-paused.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00073-t045871ms-paused.png new file mode 100644 index 0000000..e077524 Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00073-t045871ms-paused.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00074-t046221ms-paused.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00074-t046221ms-paused.png new file mode 100644 index 0000000..b6bcad1 Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00074-t046221ms-paused.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00075-t046588ms-paused.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00075-t046588ms-paused.png new file mode 100644 index 0000000..32d823b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00075-t046588ms-paused.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00076-t046908ms-paused.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00076-t046908ms-paused.png new file mode 100644 index 0000000..d2b870c Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00076-t046908ms-paused.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00077-t047216ms-paused.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00077-t047216ms-paused.png new file mode 100644 index 0000000..e77bb22 Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00077-t047216ms-paused.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00078-t047543ms-paused.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00078-t047543ms-paused.png new file mode 100644 index 0000000..b666606 Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00078-t047543ms-paused.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00079-t047921ms-paused.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00079-t047921ms-paused.png new file mode 100644 index 0000000..59f35cc Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00079-t047921ms-paused.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00080-t048232ms-paused.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00080-t048232ms-paused.png new file mode 100644 index 0000000..be7f786 Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00080-t048232ms-paused.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00081-t048623ms-paused.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00081-t048623ms-paused.png new file mode 100644 index 0000000..d5efa51 Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00081-t048623ms-paused.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00082-t048964ms-paused.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00082-t048964ms-paused.png new file mode 100644 index 0000000..bf232f0 Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00082-t048964ms-paused.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00083-t049316ms-paused.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00083-t049316ms-paused.png new file mode 100644 index 0000000..4dfc1fe Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00083-t049316ms-paused.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00084-t049635ms-paused.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00084-t049635ms-paused.png new file mode 100644 index 0000000..0c06514 Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00084-t049635ms-paused.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00085-t049965ms-paused.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00085-t049965ms-paused.png new file mode 100644 index 0000000..36dc4a8 Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00085-t049965ms-paused.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00086-t050316ms-paused.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00086-t050316ms-paused.png new file mode 100644 index 0000000..987d6ce Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00086-t050316ms-paused.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00087-t050682ms-paused.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00087-t050682ms-paused.png new file mode 100644 index 0000000..dc6024a Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00087-t050682ms-paused.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00088-t051041ms-paused.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00088-t051041ms-paused.png new file mode 100644 index 0000000..2215caa Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00088-t051041ms-paused.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00089-t051424ms-paused.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00089-t051424ms-paused.png new file mode 100644 index 0000000..94aa835 Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00089-t051424ms-paused.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00090-t051798ms-paused.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00090-t051798ms-paused.png new file mode 100644 index 0000000..966a63d Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00090-t051798ms-paused.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00091-t052157ms-paused.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00091-t052157ms-paused.png new file mode 100644 index 0000000..2b1edfa Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00091-t052157ms-paused.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00092-t052509ms-paused.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00092-t052509ms-paused.png new file mode 100644 index 0000000..04d5a82 Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00092-t052509ms-paused.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00093-t052884ms-paused.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00093-t052884ms-paused.png new file mode 100644 index 0000000..fdd617d Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00093-t052884ms-paused.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00094-t053256ms-paused.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00094-t053256ms-paused.png new file mode 100644 index 0000000..98332cd Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00094-t053256ms-paused.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00095-t053599ms-paused.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00095-t053599ms-paused.png new file mode 100644 index 0000000..ccca874 Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00095-t053599ms-paused.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00096-t053923ms-paused.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00096-t053923ms-paused.png new file mode 100644 index 0000000..ce3703d Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00096-t053923ms-paused.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00097-t054246ms-paused.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00097-t054246ms-paused.png new file mode 100644 index 0000000..ea37232 Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00097-t054246ms-paused.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00098-t054611ms-paused.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00098-t054611ms-paused.png new file mode 100644 index 0000000..93da19c Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00098-t054611ms-paused.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00099-t054921ms-paused.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00099-t054921ms-paused.png new file mode 100644 index 0000000..34977a2 Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00099-t054921ms-paused.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00100-t055235ms-paused.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00100-t055235ms-paused.png new file mode 100644 index 0000000..3fcd214 Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00100-t055235ms-paused.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00101-t055561ms-paused.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00101-t055561ms-paused.png new file mode 100644 index 0000000..0e09418 Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00101-t055561ms-paused.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00102-t055898ms-paused.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00102-t055898ms-paused.png new file mode 100644 index 0000000..abc969f Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00102-t055898ms-paused.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00103-t056240ms-paused.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00103-t056240ms-paused.png new file mode 100644 index 0000000..ba0eb49 Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00103-t056240ms-paused.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00104-t056546ms-paused.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00104-t056546ms-paused.png new file mode 100644 index 0000000..1236e6d Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00104-t056546ms-paused.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00105-t056852ms-paused.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00105-t056852ms-paused.png new file mode 100644 index 0000000..a623103 Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00105-t056852ms-paused.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00106-t057286ms-paused.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00106-t057286ms-paused.png new file mode 100644 index 0000000..c2354f9 Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00106-t057286ms-paused.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00107-t057642ms-paused.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00107-t057642ms-paused.png new file mode 100644 index 0000000..22229a5 Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00107-t057642ms-paused.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00108-t057940ms-paused.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00108-t057940ms-paused.png new file mode 100644 index 0000000..de20287 Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00108-t057940ms-paused.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00109-t058279ms-paused.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00109-t058279ms-paused.png new file mode 100644 index 0000000..8fe82cb Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00109-t058279ms-paused.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00110-t058598ms-paused.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00110-t058598ms-paused.png new file mode 100644 index 0000000..5ae5196 Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00110-t058598ms-paused.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00111-t058927ms-paused.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00111-t058927ms-paused.png new file mode 100644 index 0000000..60f68c8 Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00111-t058927ms-paused.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00112-t059239ms-paused.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00112-t059239ms-paused.png new file mode 100644 index 0000000..e85094a Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00112-t059239ms-paused.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00113-t059548ms-paused.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00113-t059548ms-paused.png new file mode 100644 index 0000000..65fad5f Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00113-t059548ms-paused.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00114-t059917ms-paused.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00114-t059917ms-paused.png new file mode 100644 index 0000000..3741067 Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00114-t059917ms-paused.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00115-t060270ms-paused.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00115-t060270ms-paused.png new file mode 100644 index 0000000..06a64ec Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00115-t060270ms-paused.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00116-t060602ms-paused.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00116-t060602ms-paused.png new file mode 100644 index 0000000..94e2bfb Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00116-t060602ms-paused.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00117-t060950ms-paused.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00117-t060950ms-paused.png new file mode 100644 index 0000000..dda5875 Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00117-t060950ms-paused.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00118-t061268ms-paused.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00118-t061268ms-paused.png new file mode 100644 index 0000000..45a8386 Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00118-t061268ms-paused.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00119-t061638ms-paused.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00119-t061638ms-paused.png new file mode 100644 index 0000000..ac94fe0 Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00119-t061638ms-paused.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00120-t062067ms-paused.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00120-t062067ms-paused.png new file mode 100644 index 0000000..c616804 Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00120-t062067ms-paused.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00121-t062450ms-paused.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00121-t062450ms-paused.png new file mode 100644 index 0000000..ecf7a40 Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00121-t062450ms-paused.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00122-t062784ms-paused.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00122-t062784ms-paused.png new file mode 100644 index 0000000..813bec4 Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00122-t062784ms-paused.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00123-t063193ms-paused.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00123-t063193ms-paused.png new file mode 100644 index 0000000..7891298 Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00123-t063193ms-paused.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00124-t063553ms-paused.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00124-t063553ms-paused.png new file mode 100644 index 0000000..49a0725 Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00124-t063553ms-paused.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00125-t063886ms-paused.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00125-t063886ms-paused.png new file mode 100644 index 0000000..9bcf113 Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00125-t063886ms-paused.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00126-t064226ms-paused.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00126-t064226ms-paused.png new file mode 100644 index 0000000..06d890b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00126-t064226ms-paused.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00127-t064596ms-paused.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00127-t064596ms-paused.png new file mode 100644 index 0000000..70fba6c Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00127-t064596ms-paused.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00128-t064934ms-paused.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00128-t064934ms-paused.png new file mode 100644 index 0000000..287c91c Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00128-t064934ms-paused.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00129-t065273ms-paused.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00129-t065273ms-paused.png new file mode 100644 index 0000000..2321080 Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00129-t065273ms-paused.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00130-t065606ms-paused.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00130-t065606ms-paused.png new file mode 100644 index 0000000..0b76cec Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00130-t065606ms-paused.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00131-t065985ms-paused.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00131-t065985ms-paused.png new file mode 100644 index 0000000..c5fe0d8 Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00131-t065985ms-paused.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00132-t066347ms-paused.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00132-t066347ms-paused.png new file mode 100644 index 0000000..0c39503 Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00132-t066347ms-paused.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00133-t066649ms-paused.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00133-t066649ms-paused.png new file mode 100644 index 0000000..74b29bd Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00133-t066649ms-paused.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00134-t066990ms-paused.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00134-t066990ms-paused.png new file mode 100644 index 0000000..2b046f5 Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00134-t066990ms-paused.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00135-t067330ms-paused.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00135-t067330ms-paused.png new file mode 100644 index 0000000..a8f36bf Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00135-t067330ms-paused.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00136-t067655ms-paused.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00136-t067655ms-paused.png new file mode 100644 index 0000000..3cd8167 Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00136-t067655ms-paused.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00137-t067983ms-paused.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00137-t067983ms-paused.png new file mode 100644 index 0000000..361e9e1 Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00137-t067983ms-paused.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00138-t068360ms-paused.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00138-t068360ms-paused.png new file mode 100644 index 0000000..c274fc7 Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00138-t068360ms-paused.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00139-t068755ms-paused.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00139-t068755ms-paused.png new file mode 100644 index 0000000..66c91dd Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00139-t068755ms-paused.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00140-t069127ms-paused.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00140-t069127ms-paused.png new file mode 100644 index 0000000..d05b19a Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00140-t069127ms-paused.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00141-t069486ms-paused.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00141-t069486ms-paused.png new file mode 100644 index 0000000..adcfaaa Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00141-t069486ms-paused.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00142-t069864ms-paused.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00142-t069864ms-paused.png new file mode 100644 index 0000000..3591f5a Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00142-t069864ms-paused.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00143-t070259ms-paused.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00143-t070259ms-paused.png new file mode 100644 index 0000000..632e9e1 Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00143-t070259ms-paused.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00144-t070597ms-paused.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00144-t070597ms-paused.png new file mode 100644 index 0000000..0d2c56e Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00144-t070597ms-paused.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00145-t070950ms-paused.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00145-t070950ms-paused.png new file mode 100644 index 0000000..de75c94 Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00145-t070950ms-paused.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00146-t071349ms-paused.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00146-t071349ms-paused.png new file mode 100644 index 0000000..0b17f93 Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00146-t071349ms-paused.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00147-t071724ms-paused.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00147-t071724ms-paused.png new file mode 100644 index 0000000..583e2e9 Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00147-t071724ms-paused.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00148-t072084ms-paused.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00148-t072084ms-paused.png new file mode 100644 index 0000000..2436584 Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00148-t072084ms-paused.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00149-t072449ms-paused.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00149-t072449ms-paused.png new file mode 100644 index 0000000..ad452f3 Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00149-t072449ms-paused.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00150-t072826ms-paused.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00150-t072826ms-paused.png new file mode 100644 index 0000000..4f09070 Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00150-t072826ms-paused.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00151-t073167ms-paused.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00151-t073167ms-paused.png new file mode 100644 index 0000000..ecc6054 Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00151-t073167ms-paused.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00152-t073510ms-paused.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00152-t073510ms-paused.png new file mode 100644 index 0000000..ed54d7a Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00152-t073510ms-paused.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00153-t073833ms-paused.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00153-t073833ms-paused.png new file mode 100644 index 0000000..220b15a Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00153-t073833ms-paused.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00154-t074126ms-paused.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00154-t074126ms-paused.png new file mode 100644 index 0000000..711f821 Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00154-t074126ms-paused.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00155-t074462ms-paused.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00155-t074462ms-paused.png new file mode 100644 index 0000000..08c214a Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00155-t074462ms-paused.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00156-t074811ms-paused.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00156-t074811ms-paused.png new file mode 100644 index 0000000..60ed2da Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00156-t074811ms-paused.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00157-t075185ms-paused.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00157-t075185ms-paused.png new file mode 100644 index 0000000..329d827 Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00157-t075185ms-paused.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00158-t075498ms-paused.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00158-t075498ms-paused.png new file mode 100644 index 0000000..e33125b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00158-t075498ms-paused.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00159-t075855ms-paused.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00159-t075855ms-paused.png new file mode 100644 index 0000000..37f7f48 Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00159-t075855ms-paused.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00160-t076184ms-paused.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00160-t076184ms-paused.png new file mode 100644 index 0000000..88832be Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00160-t076184ms-paused.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00161-t076526ms-paused.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00161-t076526ms-paused.png new file mode 100644 index 0000000..890986b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00161-t076526ms-paused.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00162-t076856ms-paused.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00162-t076856ms-paused.png new file mode 100644 index 0000000..8855fb9 Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00162-t076856ms-paused.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00163-t077169ms-paused.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00163-t077169ms-paused.png new file mode 100644 index 0000000..76a6180 Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00163-t077169ms-paused.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00164-t077493ms-paused.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00164-t077493ms-paused.png new file mode 100644 index 0000000..161bec7 Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00164-t077493ms-paused.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00165-t077883ms-paused.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00165-t077883ms-paused.png new file mode 100644 index 0000000..555ceec Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00165-t077883ms-paused.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00166-t078206ms-paused.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00166-t078206ms-paused.png new file mode 100644 index 0000000..651282d Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00166-t078206ms-paused.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00167-t078521ms-paused.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00167-t078521ms-paused.png new file mode 100644 index 0000000..e122acc Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00167-t078521ms-paused.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00168-t078872ms-paused.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00168-t078872ms-paused.png new file mode 100644 index 0000000..2c4d013 Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00168-t078872ms-paused.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00169-t079196ms-paused.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00169-t079196ms-paused.png new file mode 100644 index 0000000..435dc32 Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00169-t079196ms-paused.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00170-t079508ms-paused.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00170-t079508ms-paused.png new file mode 100644 index 0000000..45424ed Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00170-t079508ms-paused.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00171-t079895ms-paused.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00171-t079895ms-paused.png new file mode 100644 index 0000000..1d6839c Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00171-t079895ms-paused.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00172-t080228ms-paused.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00172-t080228ms-paused.png new file mode 100644 index 0000000..eae0a83 Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00172-t080228ms-paused.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00173-t080558ms-paused.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00173-t080558ms-paused.png new file mode 100644 index 0000000..0738999 Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00173-t080558ms-paused.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00174-t080933ms-paused.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00174-t080933ms-paused.png new file mode 100644 index 0000000..7a2e3c5 Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00174-t080933ms-paused.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00175-t081261ms-paused.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00175-t081261ms-paused.png new file mode 100644 index 0000000..0ca8574 Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00175-t081261ms-paused.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00176-t081591ms-paused.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00176-t081591ms-paused.png new file mode 100644 index 0000000..eb59387 Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00176-t081591ms-paused.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00177-t081964ms-paused.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00177-t081964ms-paused.png new file mode 100644 index 0000000..bff1b11 Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00177-t081964ms-paused.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00178-t082305ms-paused.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00178-t082305ms-paused.png new file mode 100644 index 0000000..7c705b1 Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00178-t082305ms-paused.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00179-t082660ms-paused.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00179-t082660ms-paused.png new file mode 100644 index 0000000..d525f04 Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/frame-00179-t082660ms-paused.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/manifest.json b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/manifest.json new file mode 100644 index 0000000..b04e77f --- /dev/null +++ b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/manifest.json @@ -0,0 +1,98956 @@ +{ + "apiName": "xyzbc-trt-estop-power-home-run-pause-50ms-verification", + "status": "failed", + "capturedAt": "2026-07-07T14:54:01.352Z", + "projectRoot": "/home/mes123456/cnc_wams/web-rtcp-5axis-xyzbc-trt-sim-plan", + "linuxCncSourceRoot": "/home/mes123456/cnc_wams/linuxcnc", + "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-20260707T145233Z", + "error": "Error: 第一次暂停保持 5 秒 position changed at 9006ms: axisPose.x 20.6224 -> 32.78217088954568\n at assertPositionFrozen (file:///home/mes123456/cnc_wams/web-rtcp-5axis-xyzbc-trt-sim-plan/tools/verify-estop-power-home-run-pause-50ms.mjs:453:15)\n at holdState (file:///home/mes123456/cnc_wams/web-rtcp-5axis-xyzbc-trt-sim-plan/tools/verify-estop-power-home-run-pause-50ms.mjs:298:7)\n at async file:///home/mes123456/cnc_wams/web-rtcp-5axis-xyzbc-trt-sim-plan/tools/verify-estop-power-home-run-pause-50ms.mjs:101:3", + "events": [ + { + "label": "setup-estop-active", + "at": "2026-07-07T14:52:38.327Z", + "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": "estopped", + "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, + "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": 10, + "taskCycle": 1, + "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": "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-07T14:52:39.587Z", + "elapsedMs": 1154, + "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": "estopped", + "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, + "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": 10, + "taskCycle": 1, + "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": "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": "idle", + "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": "estop reset; machine off" + } + }, + { + "label": "上电", + "selector": "[data-action=\"power\"]", + "at": "2026-07-07T14:52:40.782Z", + "elapsedMs": 1094, + "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": "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, + "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": 10, + "taskCycle": 1, + "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": "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-07T14:52:41.847Z", + "elapsedMs": 941, + "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, + "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": "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": 3600, + "operatorMessage": "task/HAL machine homed" + } + }, + { + "label": "Run", + "selector": "[data-action=\"run\"]", + "at": "2026-07-07T14:52:45.338Z", + "elapsedMs": 3398, + "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": "motion-status", + "activeLineHalSynced": true, + "type": "TASK_MOTION", + "paused": false, + "timeSeconds": 0, + "axisPose": { + "x": 0, + "y": 0, + "z": 10, + "a": 0, + "b": 0, + "c": 0 + }, + "currentVelocityMmPerMin": 3600, + "requestedVelocityMmPerMin": 3600, + "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": 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": 3600, + "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": "running", + "taskState": "on", + "powerOn": true, + "estopActive": false, + "allHomed": true, + "mode": "auto", + "interpState": "reading", + "taskPaused": false, + "motionPaused": false, + "activeLine": 16, + "sampleIndex": 0, + "programExecutionSourceMode": "linuxcnc-machine-file-remap-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, + "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": 30, + "operatorMessage": "LinuxCNC interpreter motion events 29" + } + }, + { + "label": "Run 后稳定运行 3000ms", + "at": "2026-07-07T14:52:48.968Z", + "durationMs": 3630, + "state": { + "runState": "running", + "taskState": "on", + "powerOn": true, + "estopActive": false, + "allHomed": true, + "mode": "auto", + "interpState": "reading", + "taskPaused": false, + "motionPaused": false, + "activeLine": 16, + "sampleIndex": 47, + "programExecutionSourceMode": "linuxcnc-task-motion-hal-wasm", + "programUiExecution": { + "apiName": "web-rtcp-5axis-ui-gcode-live-execution", + "status": "running", + "source": "programAxisPreviewPath.samples", + "samplePeriodMs": 50, + "sampleIndex": 47, + "sampleCount": 1300, + "executedSampleCount": 48, + "timeMs": 2350, + "activeProgram": "configs/sim/axis/vismach/5axis/table-rotary-tilting/demos/xyzbc_switchkins.ngc", + "sourceFile": "helix_bc.ngc", + "line": 16, + "statement": "g0b#c#", + "operation": "rapid-bc-orient", + "executionIndex": 10, + "gcodeStepIndex": 34, + "segmentIndex": 3, + "motionType": "rapid", + "activeKinematics": "tcp-xyzbc", + "joint": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 15.8621, + "c": 35.6897 + }, + "tcp": { + "x": 10, + "y": 20, + "z": 10 + }, + "toolAxis": { + "i": 0.2219894650279811, + "j": 0.15945484462619963, + "k": 0.9619224656602139 + }, + "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": 203.7696, + "operatorMessage": "task/HAL status tick 46" + }, + "frozenPosition": null, + "movedDuringHold": true + }, + { + "label": "第一次暂停", + "selector": "[data-tool-id=\"tbtn_pause\"]", + "at": "2026-07-07T14:52:52.909Z", + "elapsedMs": 3818, + "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": 101, + "programRuntimeFeedback": { + "apiName": "web-rtcp-5axis-program-runtime-feedback", + "sourceMode": "linuxcnc-task-motion-hal-wasm", + "semanticBoundary": "linuxcnc_task_motion_hal_wasm_simulation_runtime", + "sampleIndex": 101, + "motionIndex": 4, + "line": 17, + "motionProgramLine": 17, + "halProgramLine": 17, + "activeLineSource": "motion-status", + "activeLineHalSynced": true, + "type": "TASK_MOTION", + "paused": false, + "timeSeconds": 0, + "axisPose": { + "x": 26.6432, + "y": 27.4745, + "z": 8.94273, + "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": 5080, + "taskCycle": 508, + "halChangedPinCount": 0, + "sourceFile": "helix_bc.ngc", + "statement": "f# g2i#z# p#", + "motionType": "arc", + "activeKinematics": "tcp-xyzbc", + "tcp": { + "x": 26.6432, + "y": 27.4745, + "z": 8.94273 + }, + "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": 26.6432, + "y": 27.4745, + "z": 8.94273, + "a": 0, + "b": 20, + "c": 45 + }, + "dro": { + "x": 26.6432, + "y": 27.4745, + "z": 8.94273, + "a": 0, + "b": 20, + "c": 45, + "tcpX": 26.6432, + "tcpY": 27.4745, + "tcpZ": 8.94273, + "dtgX": 0, + "dtgY": 0, + "dtgZ": 0 + }, + "programUiExecution": { + "apiName": "web-rtcp-5axis-ui-gcode-live-execution", + "status": "running", + "source": "programAxisPreviewPath.samples", + "samplePeriodMs": 50, + "sampleIndex": 101, + "sampleCount": 1300, + "executedSampleCount": 102, + "timeMs": 5050, + "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": 26.6432, + "y": 27.4745, + "z": 8.94273, + "a": 0, + "b": 20, + "c": 45 + }, + "tcp": { + "x": 26.6432, + "y": 27.4745, + "z": 8.94273 + }, + "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 100", + "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.027, + "y": 0.027, + "z": 0.009 + }, + "canvasVismachPins": null, + "programPaneDataset": { + "region": "program", + "liveSourceFile": "helix_bc.ngc", + "liveSourceLine": "17", + "liveSampleIndex": "101", + "liveExecutedSamples": "102", + "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": "101" + } + }, + "after": { + "runState": "paused", + "taskState": "on", + "powerOn": true, + "estopActive": false, + "allHomed": true, + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "motionPaused": true, + "activeLine": 17, + "sampleIndex": 109, + "programExecutionSourceMode": "linuxcnc-task-motion-hal-wasm", + "programUiExecution": { + "apiName": "web-rtcp-5axis-ui-gcode-live-execution", + "status": "paused", + "source": "programAxisPreviewPath.samples", + "samplePeriodMs": 50, + "sampleIndex": 109, + "sampleCount": 1300, + "executedSampleCount": 110, + "timeMs": 5450, + "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": 20.6224, + "y": 29.9806, + "z": 8.76652, + "a": 0, + "b": 20, + "c": 45 + }, + "tcp": { + "x": 20.6224, + "y": 29.9806, + "z": 8.76652 + }, + "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 program paused" + } + } + ], + "assertions": [ + { + "label": "WebGL/canvas preview rendered", + "passed": true, + "checkedAt": "2026-07-07T14:52:36.588Z", + "result": { + "ok": true, + "width": 383, + "height": 572, + "dataUrlLength": 48954 + } + }, + { + "label": "解除 ESTOP", + "passed": true, + "checkedAt": "2026-07-07T14:52:39.588Z", + "state": { + "runState": "idle", + "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": "estop reset; machine off" + } + }, + { + "label": "上电", + "passed": true, + "checkedAt": "2026-07-07T14:52:40.782Z", + "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-07T14:52:41.847Z", + "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": 3600, + "operatorMessage": "task/HAL machine homed" + } + }, + { + "label": "Run", + "passed": true, + "checkedAt": "2026-07-07T14:52:45.338Z", + "state": { + "runState": "running", + "taskState": "on", + "powerOn": true, + "estopActive": false, + "allHomed": true, + "mode": "auto", + "interpState": "reading", + "taskPaused": false, + "motionPaused": false, + "activeLine": 16, + "sampleIndex": 0, + "programExecutionSourceMode": "linuxcnc-machine-file-remap-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, + "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": 30, + "operatorMessage": "LinuxCNC interpreter motion events 29" + } + }, + { + "label": "Run 后稳定运行 3000ms", + "passed": true, + "checkedAt": "2026-07-07T14:52:48.968Z", + "state": { + "runState": "running", + "taskState": "on", + "powerOn": true, + "estopActive": false, + "allHomed": true, + "mode": "auto", + "interpState": "reading", + "taskPaused": false, + "motionPaused": false, + "activeLine": 16, + "sampleIndex": 47, + "programExecutionSourceMode": "linuxcnc-task-motion-hal-wasm", + "programUiExecution": { + "apiName": "web-rtcp-5axis-ui-gcode-live-execution", + "status": "running", + "source": "programAxisPreviewPath.samples", + "samplePeriodMs": 50, + "sampleIndex": 47, + "sampleCount": 1300, + "executedSampleCount": 48, + "timeMs": 2350, + "activeProgram": "configs/sim/axis/vismach/5axis/table-rotary-tilting/demos/xyzbc_switchkins.ngc", + "sourceFile": "helix_bc.ngc", + "line": 16, + "statement": "g0b#c#", + "operation": "rapid-bc-orient", + "executionIndex": 10, + "gcodeStepIndex": 34, + "segmentIndex": 3, + "motionType": "rapid", + "activeKinematics": "tcp-xyzbc", + "joint": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 15.8621, + "c": 35.6897 + }, + "tcp": { + "x": 10, + "y": 20, + "z": 10 + }, + "toolAxis": { + "i": 0.2219894650279811, + "j": 0.15945484462619963, + "k": 0.9619224656602139 + }, + "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": 203.7696, + "operatorMessage": "task/HAL status tick 46" + } + }, + { + "label": "第一次暂停", + "passed": true, + "checkedAt": "2026-07-07T14:52:52.910Z", + "state": { + "runState": "paused", + "taskState": "on", + "powerOn": true, + "estopActive": false, + "allHomed": true, + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "motionPaused": true, + "activeLine": 17, + "sampleIndex": 109, + "programExecutionSourceMode": "linuxcnc-task-motion-hal-wasm", + "programUiExecution": { + "apiName": "web-rtcp-5axis-ui-gcode-live-execution", + "status": "paused", + "source": "programAxisPreviewPath.samples", + "samplePeriodMs": 50, + "sampleIndex": 109, + "sampleCount": 1300, + "executedSampleCount": 110, + "timeMs": 5450, + "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": 20.6224, + "y": 29.9806, + "z": 8.76652, + "a": 0, + "b": 20, + "c": 45 + }, + "tcp": { + "x": 20.6224, + "y": 29.9806, + "z": 8.76652 + }, + "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 program paused" + } + } + ], + "capturedFrameCount": 180, + "firstFrame": { + "index": 0, + "elapsedMs": 76, + "file": "frame-00000-t000076ms-estopped.png", + "runState": "estopped", + "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": 179, + "elapsedMs": 82660, + "file": "frame-00179-t082660ms-paused.png", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "motionPaused": true, + "activeLine": 17, + "sampleIndex": 109, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 0 + }, + "frames": [ + { + "index": 0, + "elapsedMs": 76, + "file": "frame-00000-t000076ms-estopped.png", + "runState": "estopped", + "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": 327, + "file": "frame-00001-t000327ms-estopped.png", + "runState": "estopped", + "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": 2, + "elapsedMs": 1365, + "file": "frame-00002-t001365ms-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": 3, + "elapsedMs": 1594, + "file": "frame-00003-t001594ms-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": 2654, + "file": "frame-00004-t002654ms-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": 3619, + "file": "frame-00005-t003619ms-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": 3600 + }, + { + "index": 6, + "elapsedMs": 3875, + "file": "frame-00006-t003875ms-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": 3600 + }, + { + "index": 7, + "elapsedMs": 10505, + "file": "frame-00007-t010505ms-running.png", + "runState": "running", + "taskState": "on", + "mode": "auto", + "interpState": "reading", + "taskPaused": false, + "motionPaused": false, + "activeLine": 17, + "sampleIndex": 99, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 996.516 + }, + { + "index": 8, + "elapsedMs": 10903, + "file": "frame-00008-t010903ms-running.png", + "runState": "running", + "taskState": "on", + "mode": "auto", + "interpState": "reading", + "taskPaused": false, + "motionPaused": false, + "activeLine": 17, + "sampleIndex": 107, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 996.516 + }, + { + "index": 9, + "elapsedMs": 14761, + "file": "frame-00009-t014761ms-paused.png", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "motionPaused": true, + "activeLine": 17, + "sampleIndex": 109, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 0 + }, + { + "index": 10, + "elapsedMs": 23424, + "file": "frame-00010-t023424ms-paused.png", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "motionPaused": true, + "activeLine": 17, + "sampleIndex": 109, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 0 + }, + { + "index": 11, + "elapsedMs": 23906, + "file": "frame-00011-t023906ms-paused.png", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "motionPaused": true, + "activeLine": 17, + "sampleIndex": 109, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 0 + }, + { + "index": 12, + "elapsedMs": 24277, + "file": "frame-00012-t024277ms-paused.png", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "motionPaused": true, + "activeLine": 17, + "sampleIndex": 109, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 0 + }, + { + "index": 13, + "elapsedMs": 24643, + "file": "frame-00013-t024643ms-paused.png", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "motionPaused": true, + "activeLine": 17, + "sampleIndex": 109, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 0 + }, + { + "index": 14, + "elapsedMs": 25011, + "file": "frame-00014-t025011ms-paused.png", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "motionPaused": true, + "activeLine": 17, + "sampleIndex": 109, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 0 + }, + { + "index": 15, + "elapsedMs": 25386, + "file": "frame-00015-t025386ms-paused.png", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "motionPaused": true, + "activeLine": 17, + "sampleIndex": 109, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 0 + }, + { + "index": 16, + "elapsedMs": 25773, + "file": "frame-00016-t025773ms-paused.png", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "motionPaused": true, + "activeLine": 17, + "sampleIndex": 109, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 0 + }, + { + "index": 17, + "elapsedMs": 26124, + "file": "frame-00017-t026124ms-paused.png", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "motionPaused": true, + "activeLine": 17, + "sampleIndex": 109, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 0 + }, + { + "index": 18, + "elapsedMs": 26446, + "file": "frame-00018-t026446ms-paused.png", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "motionPaused": true, + "activeLine": 17, + "sampleIndex": 109, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 0 + }, + { + "index": 19, + "elapsedMs": 26774, + "file": "frame-00019-t026774ms-paused.png", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "motionPaused": true, + "activeLine": 17, + "sampleIndex": 109, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 0 + }, + { + "index": 20, + "elapsedMs": 27111, + "file": "frame-00020-t027111ms-paused.png", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "motionPaused": true, + "activeLine": 17, + "sampleIndex": 109, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 0 + }, + { + "index": 21, + "elapsedMs": 27423, + "file": "frame-00021-t027423ms-paused.png", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "motionPaused": true, + "activeLine": 17, + "sampleIndex": 109, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 0 + }, + { + "index": 22, + "elapsedMs": 27796, + "file": "frame-00022-t027796ms-paused.png", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "motionPaused": true, + "activeLine": 17, + "sampleIndex": 109, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 0 + }, + { + "index": 23, + "elapsedMs": 28151, + "file": "frame-00023-t028151ms-paused.png", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "motionPaused": true, + "activeLine": 17, + "sampleIndex": 109, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 0 + }, + { + "index": 24, + "elapsedMs": 28512, + "file": "frame-00024-t028512ms-paused.png", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "motionPaused": true, + "activeLine": 17, + "sampleIndex": 109, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 0 + }, + { + "index": 25, + "elapsedMs": 28840, + "file": "frame-00025-t028840ms-paused.png", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "motionPaused": true, + "activeLine": 17, + "sampleIndex": 109, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 0 + }, + { + "index": 26, + "elapsedMs": 29183, + "file": "frame-00026-t029183ms-paused.png", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "motionPaused": true, + "activeLine": 17, + "sampleIndex": 109, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 0 + }, + { + "index": 27, + "elapsedMs": 29517, + "file": "frame-00027-t029517ms-paused.png", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "motionPaused": true, + "activeLine": 17, + "sampleIndex": 109, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 0 + }, + { + "index": 28, + "elapsedMs": 29848, + "file": "frame-00028-t029848ms-paused.png", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "motionPaused": true, + "activeLine": 17, + "sampleIndex": 109, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 0 + }, + { + "index": 29, + "elapsedMs": 30181, + "file": "frame-00029-t030181ms-paused.png", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "motionPaused": true, + "activeLine": 17, + "sampleIndex": 109, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 0 + }, + { + "index": 30, + "elapsedMs": 30530, + "file": "frame-00030-t030530ms-paused.png", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "motionPaused": true, + "activeLine": 17, + "sampleIndex": 109, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 0 + }, + { + "index": 31, + "elapsedMs": 30862, + "file": "frame-00031-t030862ms-paused.png", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "motionPaused": true, + "activeLine": 17, + "sampleIndex": 109, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 0 + }, + { + "index": 32, + "elapsedMs": 31199, + "file": "frame-00032-t031199ms-paused.png", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "motionPaused": true, + "activeLine": 17, + "sampleIndex": 109, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 0 + }, + { + "index": 33, + "elapsedMs": 31543, + "file": "frame-00033-t031543ms-paused.png", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "motionPaused": true, + "activeLine": 17, + "sampleIndex": 109, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 0 + }, + { + "index": 34, + "elapsedMs": 31873, + "file": "frame-00034-t031873ms-paused.png", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "motionPaused": true, + "activeLine": 17, + "sampleIndex": 109, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 0 + }, + { + "index": 35, + "elapsedMs": 32225, + "file": "frame-00035-t032225ms-paused.png", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "motionPaused": true, + "activeLine": 17, + "sampleIndex": 109, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 0 + }, + { + "index": 36, + "elapsedMs": 32575, + "file": "frame-00036-t032575ms-paused.png", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "motionPaused": true, + "activeLine": 17, + "sampleIndex": 109, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 0 + }, + { + "index": 37, + "elapsedMs": 32911, + "file": "frame-00037-t032911ms-paused.png", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "motionPaused": true, + "activeLine": 17, + "sampleIndex": 109, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 0 + }, + { + "index": 38, + "elapsedMs": 33242, + "file": "frame-00038-t033242ms-paused.png", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "motionPaused": true, + "activeLine": 17, + "sampleIndex": 109, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 0 + }, + { + "index": 39, + "elapsedMs": 33580, + "file": "frame-00039-t033580ms-paused.png", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "motionPaused": true, + "activeLine": 17, + "sampleIndex": 109, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 0 + }, + { + "index": 40, + "elapsedMs": 33937, + "file": "frame-00040-t033937ms-paused.png", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "motionPaused": true, + "activeLine": 17, + "sampleIndex": 109, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 0 + }, + { + "index": 41, + "elapsedMs": 34258, + "file": "frame-00041-t034258ms-paused.png", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "motionPaused": true, + "activeLine": 17, + "sampleIndex": 109, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 0 + }, + { + "index": 42, + "elapsedMs": 34689, + "file": "frame-00042-t034689ms-paused.png", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "motionPaused": true, + "activeLine": 17, + "sampleIndex": 109, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 0 + }, + { + "index": 43, + "elapsedMs": 35033, + "file": "frame-00043-t035033ms-paused.png", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "motionPaused": true, + "activeLine": 17, + "sampleIndex": 109, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 0 + }, + { + "index": 44, + "elapsedMs": 35436, + "file": "frame-00044-t035436ms-paused.png", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "motionPaused": true, + "activeLine": 17, + "sampleIndex": 109, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 0 + }, + { + "index": 45, + "elapsedMs": 35803, + "file": "frame-00045-t035803ms-paused.png", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "motionPaused": true, + "activeLine": 17, + "sampleIndex": 109, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 0 + }, + { + "index": 46, + "elapsedMs": 36180, + "file": "frame-00046-t036180ms-paused.png", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "motionPaused": true, + "activeLine": 17, + "sampleIndex": 109, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 0 + }, + { + "index": 47, + "elapsedMs": 36535, + "file": "frame-00047-t036535ms-paused.png", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "motionPaused": true, + "activeLine": 17, + "sampleIndex": 109, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 0 + }, + { + "index": 48, + "elapsedMs": 36891, + "file": "frame-00048-t036891ms-paused.png", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "motionPaused": true, + "activeLine": 17, + "sampleIndex": 109, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 0 + }, + { + "index": 49, + "elapsedMs": 37233, + "file": "frame-00049-t037233ms-paused.png", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "motionPaused": true, + "activeLine": 17, + "sampleIndex": 109, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 0 + }, + { + "index": 50, + "elapsedMs": 37611, + "file": "frame-00050-t037611ms-paused.png", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "motionPaused": true, + "activeLine": 17, + "sampleIndex": 109, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 0 + }, + { + "index": 51, + "elapsedMs": 37959, + "file": "frame-00051-t037959ms-paused.png", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "motionPaused": true, + "activeLine": 17, + "sampleIndex": 109, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 0 + }, + { + "index": 52, + "elapsedMs": 38292, + "file": "frame-00052-t038292ms-paused.png", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "motionPaused": true, + "activeLine": 17, + "sampleIndex": 109, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 0 + }, + { + "index": 53, + "elapsedMs": 38685, + "file": "frame-00053-t038685ms-paused.png", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "motionPaused": true, + "activeLine": 17, + "sampleIndex": 109, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 0 + }, + { + "index": 54, + "elapsedMs": 38992, + "file": "frame-00054-t038992ms-paused.png", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "motionPaused": true, + "activeLine": 17, + "sampleIndex": 109, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 0 + }, + { + "index": 55, + "elapsedMs": 39366, + "file": "frame-00055-t039366ms-paused.png", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "motionPaused": true, + "activeLine": 17, + "sampleIndex": 109, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 0 + }, + { + "index": 56, + "elapsedMs": 39705, + "file": "frame-00056-t039705ms-paused.png", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "motionPaused": true, + "activeLine": 17, + "sampleIndex": 109, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 0 + }, + { + "index": 57, + "elapsedMs": 40080, + "file": "frame-00057-t040080ms-paused.png", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "motionPaused": true, + "activeLine": 17, + "sampleIndex": 109, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 0 + }, + { + "index": 58, + "elapsedMs": 40437, + "file": "frame-00058-t040437ms-paused.png", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "motionPaused": true, + "activeLine": 17, + "sampleIndex": 109, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 0 + }, + { + "index": 59, + "elapsedMs": 40765, + "file": "frame-00059-t040765ms-paused.png", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "motionPaused": true, + "activeLine": 17, + "sampleIndex": 109, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 0 + }, + { + "index": 60, + "elapsedMs": 41055, + "file": "frame-00060-t041055ms-paused.png", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "motionPaused": true, + "activeLine": 17, + "sampleIndex": 109, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 0 + }, + { + "index": 61, + "elapsedMs": 41374, + "file": "frame-00061-t041374ms-paused.png", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "motionPaused": true, + "activeLine": 17, + "sampleIndex": 109, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 0 + }, + { + "index": 62, + "elapsedMs": 41728, + "file": "frame-00062-t041728ms-paused.png", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "motionPaused": true, + "activeLine": 17, + "sampleIndex": 109, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 0 + }, + { + "index": 63, + "elapsedMs": 42087, + "file": "frame-00063-t042087ms-paused.png", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "motionPaused": true, + "activeLine": 17, + "sampleIndex": 109, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 0 + }, + { + "index": 64, + "elapsedMs": 42537, + "file": "frame-00064-t042537ms-paused.png", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "motionPaused": true, + "activeLine": 17, + "sampleIndex": 109, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 0 + }, + { + "index": 65, + "elapsedMs": 42920, + "file": "frame-00065-t042920ms-paused.png", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "motionPaused": true, + "activeLine": 17, + "sampleIndex": 109, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 0 + }, + { + "index": 66, + "elapsedMs": 43344, + "file": "frame-00066-t043344ms-paused.png", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "motionPaused": true, + "activeLine": 17, + "sampleIndex": 109, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 0 + }, + { + "index": 67, + "elapsedMs": 43749, + "file": "frame-00067-t043749ms-paused.png", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "motionPaused": true, + "activeLine": 17, + "sampleIndex": 109, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 0 + }, + { + "index": 68, + "elapsedMs": 44171, + "file": "frame-00068-t044171ms-paused.png", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "motionPaused": true, + "activeLine": 17, + "sampleIndex": 109, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 0 + }, + { + "index": 69, + "elapsedMs": 44550, + "file": "frame-00069-t044550ms-paused.png", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "motionPaused": true, + "activeLine": 17, + "sampleIndex": 109, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 0 + }, + { + "index": 70, + "elapsedMs": 44871, + "file": "frame-00070-t044871ms-paused.png", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "motionPaused": true, + "activeLine": 17, + "sampleIndex": 109, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 0 + }, + { + "index": 71, + "elapsedMs": 45240, + "file": "frame-00071-t045240ms-paused.png", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "motionPaused": true, + "activeLine": 17, + "sampleIndex": 109, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 0 + }, + { + "index": 72, + "elapsedMs": 45563, + "file": "frame-00072-t045563ms-paused.png", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "motionPaused": true, + "activeLine": 17, + "sampleIndex": 109, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 0 + }, + { + "index": 73, + "elapsedMs": 45871, + "file": "frame-00073-t045871ms-paused.png", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "motionPaused": true, + "activeLine": 17, + "sampleIndex": 109, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 0 + }, + { + "index": 74, + "elapsedMs": 46221, + "file": "frame-00074-t046221ms-paused.png", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "motionPaused": true, + "activeLine": 17, + "sampleIndex": 109, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 0 + }, + { + "index": 75, + "elapsedMs": 46588, + "file": "frame-00075-t046588ms-paused.png", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "motionPaused": true, + "activeLine": 17, + "sampleIndex": 109, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 0 + }, + { + "index": 76, + "elapsedMs": 46908, + "file": "frame-00076-t046908ms-paused.png", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "motionPaused": true, + "activeLine": 17, + "sampleIndex": 109, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 0 + }, + { + "index": 77, + "elapsedMs": 47216, + "file": "frame-00077-t047216ms-paused.png", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "motionPaused": true, + "activeLine": 17, + "sampleIndex": 109, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 0 + }, + { + "index": 78, + "elapsedMs": 47543, + "file": "frame-00078-t047543ms-paused.png", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "motionPaused": true, + "activeLine": 17, + "sampleIndex": 109, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 0 + }, + { + "index": 79, + "elapsedMs": 47921, + "file": "frame-00079-t047921ms-paused.png", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "motionPaused": true, + "activeLine": 17, + "sampleIndex": 109, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 0 + }, + { + "index": 80, + "elapsedMs": 48232, + "file": "frame-00080-t048232ms-paused.png", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "motionPaused": true, + "activeLine": 17, + "sampleIndex": 109, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 0 + }, + { + "index": 81, + "elapsedMs": 48623, + "file": "frame-00081-t048623ms-paused.png", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "motionPaused": true, + "activeLine": 17, + "sampleIndex": 109, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 0 + }, + { + "index": 82, + "elapsedMs": 48964, + "file": "frame-00082-t048964ms-paused.png", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "motionPaused": true, + "activeLine": 17, + "sampleIndex": 109, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 0 + }, + { + "index": 83, + "elapsedMs": 49316, + "file": "frame-00083-t049316ms-paused.png", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "motionPaused": true, + "activeLine": 17, + "sampleIndex": 109, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 0 + }, + { + "index": 84, + "elapsedMs": 49635, + "file": "frame-00084-t049635ms-paused.png", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "motionPaused": true, + "activeLine": 17, + "sampleIndex": 109, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 0 + }, + { + "index": 85, + "elapsedMs": 49965, + "file": "frame-00085-t049965ms-paused.png", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "motionPaused": true, + "activeLine": 17, + "sampleIndex": 109, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 0 + }, + { + "index": 86, + "elapsedMs": 50316, + "file": "frame-00086-t050316ms-paused.png", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "motionPaused": true, + "activeLine": 17, + "sampleIndex": 109, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 0 + }, + { + "index": 87, + "elapsedMs": 50682, + "file": "frame-00087-t050682ms-paused.png", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "motionPaused": true, + "activeLine": 17, + "sampleIndex": 109, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 0 + }, + { + "index": 88, + "elapsedMs": 51041, + "file": "frame-00088-t051041ms-paused.png", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "motionPaused": true, + "activeLine": 17, + "sampleIndex": 109, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 0 + }, + { + "index": 89, + "elapsedMs": 51424, + "file": "frame-00089-t051424ms-paused.png", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "motionPaused": true, + "activeLine": 17, + "sampleIndex": 109, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 0 + }, + { + "index": 90, + "elapsedMs": 51798, + "file": "frame-00090-t051798ms-paused.png", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "motionPaused": true, + "activeLine": 17, + "sampleIndex": 109, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 0 + }, + { + "index": 91, + "elapsedMs": 52157, + "file": "frame-00091-t052157ms-paused.png", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "motionPaused": true, + "activeLine": 17, + "sampleIndex": 109, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 0 + }, + { + "index": 92, + "elapsedMs": 52509, + "file": "frame-00092-t052509ms-paused.png", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "motionPaused": true, + "activeLine": 17, + "sampleIndex": 109, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 0 + }, + { + "index": 93, + "elapsedMs": 52884, + "file": "frame-00093-t052884ms-paused.png", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "motionPaused": true, + "activeLine": 17, + "sampleIndex": 109, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 0 + }, + { + "index": 94, + "elapsedMs": 53256, + "file": "frame-00094-t053256ms-paused.png", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "motionPaused": true, + "activeLine": 17, + "sampleIndex": 109, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 0 + }, + { + "index": 95, + "elapsedMs": 53599, + "file": "frame-00095-t053599ms-paused.png", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "motionPaused": true, + "activeLine": 17, + "sampleIndex": 109, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 0 + }, + { + "index": 96, + "elapsedMs": 53923, + "file": "frame-00096-t053923ms-paused.png", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "motionPaused": true, + "activeLine": 17, + "sampleIndex": 109, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 0 + }, + { + "index": 97, + "elapsedMs": 54246, + "file": "frame-00097-t054246ms-paused.png", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "motionPaused": true, + "activeLine": 17, + "sampleIndex": 109, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 0 + }, + { + "index": 98, + "elapsedMs": 54611, + "file": "frame-00098-t054611ms-paused.png", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "motionPaused": true, + "activeLine": 17, + "sampleIndex": 109, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 0 + }, + { + "index": 99, + "elapsedMs": 54921, + "file": "frame-00099-t054921ms-paused.png", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "motionPaused": true, + "activeLine": 17, + "sampleIndex": 109, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 0 + }, + { + "index": 100, + "elapsedMs": 55235, + "file": "frame-00100-t055235ms-paused.png", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "motionPaused": true, + "activeLine": 17, + "sampleIndex": 109, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 0 + }, + { + "index": 101, + "elapsedMs": 55561, + "file": "frame-00101-t055561ms-paused.png", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "motionPaused": true, + "activeLine": 17, + "sampleIndex": 109, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 0 + }, + { + "index": 102, + "elapsedMs": 55898, + "file": "frame-00102-t055898ms-paused.png", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "motionPaused": true, + "activeLine": 17, + "sampleIndex": 109, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 0 + }, + { + "index": 103, + "elapsedMs": 56240, + "file": "frame-00103-t056240ms-paused.png", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "motionPaused": true, + "activeLine": 17, + "sampleIndex": 109, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 0 + }, + { + "index": 104, + "elapsedMs": 56546, + "file": "frame-00104-t056546ms-paused.png", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "motionPaused": true, + "activeLine": 17, + "sampleIndex": 109, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 0 + }, + { + "index": 105, + "elapsedMs": 56852, + "file": "frame-00105-t056852ms-paused.png", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "motionPaused": true, + "activeLine": 17, + "sampleIndex": 109, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 0 + }, + { + "index": 106, + "elapsedMs": 57286, + "file": "frame-00106-t057286ms-paused.png", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "motionPaused": true, + "activeLine": 17, + "sampleIndex": 109, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 0 + }, + { + "index": 107, + "elapsedMs": 57642, + "file": "frame-00107-t057642ms-paused.png", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "motionPaused": true, + "activeLine": 17, + "sampleIndex": 109, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 0 + }, + { + "index": 108, + "elapsedMs": 57940, + "file": "frame-00108-t057940ms-paused.png", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "motionPaused": true, + "activeLine": 17, + "sampleIndex": 109, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 0 + }, + { + "index": 109, + "elapsedMs": 58279, + "file": "frame-00109-t058279ms-paused.png", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "motionPaused": true, + "activeLine": 17, + "sampleIndex": 109, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 0 + }, + { + "index": 110, + "elapsedMs": 58598, + "file": "frame-00110-t058598ms-paused.png", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "motionPaused": true, + "activeLine": 17, + "sampleIndex": 109, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 0 + }, + { + "index": 111, + "elapsedMs": 58927, + "file": "frame-00111-t058927ms-paused.png", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "motionPaused": true, + "activeLine": 17, + "sampleIndex": 109, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 0 + }, + { + "index": 112, + "elapsedMs": 59239, + "file": "frame-00112-t059239ms-paused.png", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "motionPaused": true, + "activeLine": 17, + "sampleIndex": 109, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 0 + }, + { + "index": 113, + "elapsedMs": 59548, + "file": "frame-00113-t059548ms-paused.png", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "motionPaused": true, + "activeLine": 17, + "sampleIndex": 109, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 0 + }, + { + "index": 114, + "elapsedMs": 59917, + "file": "frame-00114-t059917ms-paused.png", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "motionPaused": true, + "activeLine": 17, + "sampleIndex": 109, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 0 + }, + { + "index": 115, + "elapsedMs": 60270, + "file": "frame-00115-t060270ms-paused.png", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "motionPaused": true, + "activeLine": 17, + "sampleIndex": 109, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 0 + }, + { + "index": 116, + "elapsedMs": 60602, + "file": "frame-00116-t060602ms-paused.png", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "motionPaused": true, + "activeLine": 17, + "sampleIndex": 109, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 0 + }, + { + "index": 117, + "elapsedMs": 60950, + "file": "frame-00117-t060950ms-paused.png", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "motionPaused": true, + "activeLine": 17, + "sampleIndex": 109, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 0 + }, + { + "index": 118, + "elapsedMs": 61268, + "file": "frame-00118-t061268ms-paused.png", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "motionPaused": true, + "activeLine": 17, + "sampleIndex": 109, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 0 + }, + { + "index": 119, + "elapsedMs": 61638, + "file": "frame-00119-t061638ms-paused.png", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "motionPaused": true, + "activeLine": 17, + "sampleIndex": 109, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 0 + }, + { + "index": 120, + "elapsedMs": 62067, + "file": "frame-00120-t062067ms-paused.png", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "motionPaused": true, + "activeLine": 17, + "sampleIndex": 109, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 0 + }, + { + "index": 121, + "elapsedMs": 62450, + "file": "frame-00121-t062450ms-paused.png", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "motionPaused": true, + "activeLine": 17, + "sampleIndex": 109, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 0 + }, + { + "index": 122, + "elapsedMs": 62784, + "file": "frame-00122-t062784ms-paused.png", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "motionPaused": true, + "activeLine": 17, + "sampleIndex": 109, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 0 + }, + { + "index": 123, + "elapsedMs": 63193, + "file": "frame-00123-t063193ms-paused.png", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "motionPaused": true, + "activeLine": 17, + "sampleIndex": 109, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 0 + }, + { + "index": 124, + "elapsedMs": 63553, + "file": "frame-00124-t063553ms-paused.png", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "motionPaused": true, + "activeLine": 17, + "sampleIndex": 109, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 0 + }, + { + "index": 125, + "elapsedMs": 63886, + "file": "frame-00125-t063886ms-paused.png", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "motionPaused": true, + "activeLine": 17, + "sampleIndex": 109, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 0 + }, + { + "index": 126, + "elapsedMs": 64226, + "file": "frame-00126-t064226ms-paused.png", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "motionPaused": true, + "activeLine": 17, + "sampleIndex": 109, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 0 + }, + { + "index": 127, + "elapsedMs": 64596, + "file": "frame-00127-t064596ms-paused.png", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "motionPaused": true, + "activeLine": 17, + "sampleIndex": 109, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 0 + }, + { + "index": 128, + "elapsedMs": 64934, + "file": "frame-00128-t064934ms-paused.png", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "motionPaused": true, + "activeLine": 17, + "sampleIndex": 109, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 0 + }, + { + "index": 129, + "elapsedMs": 65273, + "file": "frame-00129-t065273ms-paused.png", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "motionPaused": true, + "activeLine": 17, + "sampleIndex": 109, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 0 + }, + { + "index": 130, + "elapsedMs": 65606, + "file": "frame-00130-t065606ms-paused.png", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "motionPaused": true, + "activeLine": 17, + "sampleIndex": 109, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 0 + }, + { + "index": 131, + "elapsedMs": 65985, + "file": "frame-00131-t065985ms-paused.png", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "motionPaused": true, + "activeLine": 17, + "sampleIndex": 109, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 0 + }, + { + "index": 132, + "elapsedMs": 66347, + "file": "frame-00132-t066347ms-paused.png", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "motionPaused": true, + "activeLine": 17, + "sampleIndex": 109, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 0 + }, + { + "index": 133, + "elapsedMs": 66649, + "file": "frame-00133-t066649ms-paused.png", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "motionPaused": true, + "activeLine": 17, + "sampleIndex": 109, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 0 + }, + { + "index": 134, + "elapsedMs": 66990, + "file": "frame-00134-t066990ms-paused.png", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "motionPaused": true, + "activeLine": 17, + "sampleIndex": 109, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 0 + }, + { + "index": 135, + "elapsedMs": 67330, + "file": "frame-00135-t067330ms-paused.png", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "motionPaused": true, + "activeLine": 17, + "sampleIndex": 109, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 0 + }, + { + "index": 136, + "elapsedMs": 67655, + "file": "frame-00136-t067655ms-paused.png", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "motionPaused": true, + "activeLine": 17, + "sampleIndex": 109, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 0 + }, + { + "index": 137, + "elapsedMs": 67983, + "file": "frame-00137-t067983ms-paused.png", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "motionPaused": true, + "activeLine": 17, + "sampleIndex": 109, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 0 + }, + { + "index": 138, + "elapsedMs": 68360, + "file": "frame-00138-t068360ms-paused.png", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "motionPaused": true, + "activeLine": 17, + "sampleIndex": 109, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 0 + }, + { + "index": 139, + "elapsedMs": 68755, + "file": "frame-00139-t068755ms-paused.png", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "motionPaused": true, + "activeLine": 17, + "sampleIndex": 109, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 0 + }, + { + "index": 140, + "elapsedMs": 69127, + "file": "frame-00140-t069127ms-paused.png", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "motionPaused": true, + "activeLine": 17, + "sampleIndex": 109, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 0 + }, + { + "index": 141, + "elapsedMs": 69486, + "file": "frame-00141-t069486ms-paused.png", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "motionPaused": true, + "activeLine": 17, + "sampleIndex": 109, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 0 + }, + { + "index": 142, + "elapsedMs": 69864, + "file": "frame-00142-t069864ms-paused.png", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "motionPaused": true, + "activeLine": 17, + "sampleIndex": 109, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 0 + }, + { + "index": 143, + "elapsedMs": 70259, + "file": "frame-00143-t070259ms-paused.png", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "motionPaused": true, + "activeLine": 17, + "sampleIndex": 109, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 0 + }, + { + "index": 144, + "elapsedMs": 70597, + "file": "frame-00144-t070597ms-paused.png", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "motionPaused": true, + "activeLine": 17, + "sampleIndex": 109, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 0 + }, + { + "index": 145, + "elapsedMs": 70950, + "file": "frame-00145-t070950ms-paused.png", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "motionPaused": true, + "activeLine": 17, + "sampleIndex": 109, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 0 + }, + { + "index": 146, + "elapsedMs": 71349, + "file": "frame-00146-t071349ms-paused.png", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "motionPaused": true, + "activeLine": 17, + "sampleIndex": 109, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 0 + }, + { + "index": 147, + "elapsedMs": 71724, + "file": "frame-00147-t071724ms-paused.png", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "motionPaused": true, + "activeLine": 17, + "sampleIndex": 109, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 0 + }, + { + "index": 148, + "elapsedMs": 72084, + "file": "frame-00148-t072084ms-paused.png", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "motionPaused": true, + "activeLine": 17, + "sampleIndex": 109, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 0 + }, + { + "index": 149, + "elapsedMs": 72449, + "file": "frame-00149-t072449ms-paused.png", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "motionPaused": true, + "activeLine": 17, + "sampleIndex": 109, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 0 + }, + { + "index": 150, + "elapsedMs": 72826, + "file": "frame-00150-t072826ms-paused.png", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "motionPaused": true, + "activeLine": 17, + "sampleIndex": 109, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 0 + }, + { + "index": 151, + "elapsedMs": 73167, + "file": "frame-00151-t073167ms-paused.png", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "motionPaused": true, + "activeLine": 17, + "sampleIndex": 109, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 0 + }, + { + "index": 152, + "elapsedMs": 73510, + "file": "frame-00152-t073510ms-paused.png", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "motionPaused": true, + "activeLine": 17, + "sampleIndex": 109, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 0 + }, + { + "index": 153, + "elapsedMs": 73833, + "file": "frame-00153-t073833ms-paused.png", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "motionPaused": true, + "activeLine": 17, + "sampleIndex": 109, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 0 + }, + { + "index": 154, + "elapsedMs": 74126, + "file": "frame-00154-t074126ms-paused.png", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "motionPaused": true, + "activeLine": 17, + "sampleIndex": 109, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 0 + }, + { + "index": 155, + "elapsedMs": 74462, + "file": "frame-00155-t074462ms-paused.png", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "motionPaused": true, + "activeLine": 17, + "sampleIndex": 109, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 0 + }, + { + "index": 156, + "elapsedMs": 74811, + "file": "frame-00156-t074811ms-paused.png", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "motionPaused": true, + "activeLine": 17, + "sampleIndex": 109, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 0 + }, + { + "index": 157, + "elapsedMs": 75185, + "file": "frame-00157-t075185ms-paused.png", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "motionPaused": true, + "activeLine": 17, + "sampleIndex": 109, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 0 + }, + { + "index": 158, + "elapsedMs": 75498, + "file": "frame-00158-t075498ms-paused.png", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "motionPaused": true, + "activeLine": 17, + "sampleIndex": 109, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 0 + }, + { + "index": 159, + "elapsedMs": 75855, + "file": "frame-00159-t075855ms-paused.png", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "motionPaused": true, + "activeLine": 17, + "sampleIndex": 109, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 0 + }, + { + "index": 160, + "elapsedMs": 76184, + "file": "frame-00160-t076184ms-paused.png", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "motionPaused": true, + "activeLine": 17, + "sampleIndex": 109, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 0 + }, + { + "index": 161, + "elapsedMs": 76526, + "file": "frame-00161-t076526ms-paused.png", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "motionPaused": true, + "activeLine": 17, + "sampleIndex": 109, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 0 + }, + { + "index": 162, + "elapsedMs": 76856, + "file": "frame-00162-t076856ms-paused.png", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "motionPaused": true, + "activeLine": 17, + "sampleIndex": 109, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 0 + }, + { + "index": 163, + "elapsedMs": 77169, + "file": "frame-00163-t077169ms-paused.png", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "motionPaused": true, + "activeLine": 17, + "sampleIndex": 109, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 0 + }, + { + "index": 164, + "elapsedMs": 77493, + "file": "frame-00164-t077493ms-paused.png", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "motionPaused": true, + "activeLine": 17, + "sampleIndex": 109, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 0 + }, + { + "index": 165, + "elapsedMs": 77883, + "file": "frame-00165-t077883ms-paused.png", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "motionPaused": true, + "activeLine": 17, + "sampleIndex": 109, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 0 + }, + { + "index": 166, + "elapsedMs": 78206, + "file": "frame-00166-t078206ms-paused.png", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "motionPaused": true, + "activeLine": 17, + "sampleIndex": 109, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 0 + }, + { + "index": 167, + "elapsedMs": 78521, + "file": "frame-00167-t078521ms-paused.png", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "motionPaused": true, + "activeLine": 17, + "sampleIndex": 109, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 0 + }, + { + "index": 168, + "elapsedMs": 78872, + "file": "frame-00168-t078872ms-paused.png", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "motionPaused": true, + "activeLine": 17, + "sampleIndex": 109, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 0 + }, + { + "index": 169, + "elapsedMs": 79196, + "file": "frame-00169-t079196ms-paused.png", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "motionPaused": true, + "activeLine": 17, + "sampleIndex": 109, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 0 + }, + { + "index": 170, + "elapsedMs": 79508, + "file": "frame-00170-t079508ms-paused.png", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "motionPaused": true, + "activeLine": 17, + "sampleIndex": 109, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 0 + }, + { + "index": 171, + "elapsedMs": 79895, + "file": "frame-00171-t079895ms-paused.png", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "motionPaused": true, + "activeLine": 17, + "sampleIndex": 109, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 0 + }, + { + "index": 172, + "elapsedMs": 80228, + "file": "frame-00172-t080228ms-paused.png", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "motionPaused": true, + "activeLine": 17, + "sampleIndex": 109, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 0 + }, + { + "index": 173, + "elapsedMs": 80558, + "file": "frame-00173-t080558ms-paused.png", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "motionPaused": true, + "activeLine": 17, + "sampleIndex": 109, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 0 + }, + { + "index": 174, + "elapsedMs": 80933, + "file": "frame-00174-t080933ms-paused.png", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "motionPaused": true, + "activeLine": 17, + "sampleIndex": 109, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 0 + }, + { + "index": 175, + "elapsedMs": 81261, + "file": "frame-00175-t081261ms-paused.png", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "motionPaused": true, + "activeLine": 17, + "sampleIndex": 109, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 0 + }, + { + "index": 176, + "elapsedMs": 81591, + "file": "frame-00176-t081591ms-paused.png", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "motionPaused": true, + "activeLine": 17, + "sampleIndex": 109, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 0 + }, + { + "index": 177, + "elapsedMs": 81964, + "file": "frame-00177-t081964ms-paused.png", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "motionPaused": true, + "activeLine": 17, + "sampleIndex": 109, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 0 + }, + { + "index": 178, + "elapsedMs": 82305, + "file": "frame-00178-t082305ms-paused.png", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "motionPaused": true, + "activeLine": 17, + "sampleIndex": 109, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 0 + }, + { + "index": 179, + "elapsedMs": 82660, + "file": "frame-00179-t082660ms-paused.png", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "motionPaused": true, + "activeLine": 17, + "sampleIndex": 109, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 0 + } + ] +} diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/snapshot-setup-estop-active.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/snapshot-setup-estop-active.png new file mode 100644 index 0000000..3d5bf8e Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145233Z/snapshot-setup-estop-active.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00000-t000057ms-estopped.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00000-t000057ms-estopped.png new file mode 100644 index 0000000..3d5bf8e Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00000-t000057ms-estopped.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00001-t000241ms-estopped.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00001-t000241ms-estopped.png new file mode 100644 index 0000000..07daae8 Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00001-t000241ms-estopped.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00002-t001054ms-idle.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00002-t001054ms-idle.png new file mode 100644 index 0000000..07daae8 Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00002-t001054ms-idle.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00003-t001225ms-idle.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00003-t001225ms-idle.png new file mode 100644 index 0000000..6a92a60 Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00003-t001225ms-idle.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00004-t002074ms-idle.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00004-t002074ms-idle.png new file mode 100644 index 0000000..33027af Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00004-t002074ms-idle.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00005-t002902ms-idle.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00005-t002902ms-idle.png new file mode 100644 index 0000000..33027af Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00005-t002902ms-idle.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00006-t003048ms-idle.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00006-t003048ms-idle.png new file mode 100644 index 0000000..33027af Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00006-t003048ms-idle.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00007-t003342ms-running.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00007-t003342ms-running.png new file mode 100644 index 0000000..323ce32 Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00007-t003342ms-running.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00008-t009990ms-running.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00008-t009990ms-running.png new file mode 100644 index 0000000..417b873 Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00008-t009990ms-running.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00009-t010356ms-running.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00009-t010356ms-running.png new file mode 100644 index 0000000..aa3892b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00009-t010356ms-running.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00010-t013568ms-paused.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00010-t013568ms-paused.png new file mode 100644 index 0000000..10db4b2 Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00010-t013568ms-paused.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00011-t020622ms-paused.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00011-t020622ms-paused.png new file mode 100644 index 0000000..8e5c4f7 Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00011-t020622ms-paused.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00012-t021108ms-running.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00012-t021108ms-running.png new file mode 100644 index 0000000..dc14556 Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00012-t021108ms-running.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00013-t029693ms-running.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00013-t029693ms-running.png new file mode 100644 index 0000000..5f9f054 Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00013-t029693ms-running.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00014-t038559ms-running.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00014-t038559ms-running.png new file mode 100644 index 0000000..3f3e229 Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00014-t038559ms-running.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00015-t039042ms-paused.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00015-t039042ms-paused.png new file mode 100644 index 0000000..639cb41 Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00015-t039042ms-paused.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00016-t046603ms-paused.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00016-t046603ms-paused.png new file mode 100644 index 0000000..7e2bf08 Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00016-t046603ms-paused.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00017-t050513ms-paused.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00017-t050513ms-paused.png new file mode 100644 index 0000000..2187725 Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00017-t050513ms-paused.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00018-t050914ms-paused.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00018-t050914ms-paused.png new file mode 100644 index 0000000..47fc69d Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00018-t050914ms-paused.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00019-t051181ms-running.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00019-t051181ms-running.png new file mode 100644 index 0000000..f01e1ff Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00019-t051181ms-running.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00020-t063391ms-running.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00020-t063391ms-running.png new file mode 100644 index 0000000..52e72e4 Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00020-t063391ms-running.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00021-t067862ms-running.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00021-t067862ms-running.png new file mode 100644 index 0000000..c13f7e0 Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00021-t067862ms-running.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00022-t068265ms-running.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00022-t068265ms-running.png new file mode 100644 index 0000000..62f22ca Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00022-t068265ms-running.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00023-t068688ms-running.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00023-t068688ms-running.png new file mode 100644 index 0000000..78fe7d8 Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00023-t068688ms-running.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00024-t069051ms-running.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00024-t069051ms-running.png new file mode 100644 index 0000000..e9bef0f Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00024-t069051ms-running.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00025-t069419ms-running.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00025-t069419ms-running.png new file mode 100644 index 0000000..73b3105 Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00025-t069419ms-running.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00026-t069736ms-running.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00026-t069736ms-running.png new file mode 100644 index 0000000..fd849ba Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00026-t069736ms-running.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00027-t070091ms-running.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00027-t070091ms-running.png new file mode 100644 index 0000000..6b88a4c Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00027-t070091ms-running.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00028-t070438ms-running.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00028-t070438ms-running.png new file mode 100644 index 0000000..81f0227 Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00028-t070438ms-running.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00029-t070794ms-running.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00029-t070794ms-running.png new file mode 100644 index 0000000..44c074d Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00029-t070794ms-running.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00030-t071124ms-running.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00030-t071124ms-running.png new file mode 100644 index 0000000..cf38121 Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00030-t071124ms-running.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00031-t071417ms-running.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00031-t071417ms-running.png new file mode 100644 index 0000000..6d403d8 Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00031-t071417ms-running.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00032-t071777ms-running.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00032-t071777ms-running.png new file mode 100644 index 0000000..d0e877b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00032-t071777ms-running.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00033-t072121ms-running.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00033-t072121ms-running.png new file mode 100644 index 0000000..cccb51d Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00033-t072121ms-running.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00034-t072422ms-running.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00034-t072422ms-running.png new file mode 100644 index 0000000..773d221 Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00034-t072422ms-running.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00035-t072768ms-running.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00035-t072768ms-running.png new file mode 100644 index 0000000..7aaaf58 Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00035-t072768ms-running.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00036-t073127ms-running.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00036-t073127ms-running.png new file mode 100644 index 0000000..2ccf31c Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00036-t073127ms-running.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00037-t073494ms-running.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00037-t073494ms-running.png new file mode 100644 index 0000000..7c4fbe6 Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00037-t073494ms-running.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00038-t073811ms-running.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00038-t073811ms-running.png new file mode 100644 index 0000000..fc30992 Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00038-t073811ms-running.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00039-t074176ms-running.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00039-t074176ms-running.png new file mode 100644 index 0000000..0f3e0c0 Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00039-t074176ms-running.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00040-t074515ms-running.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00040-t074515ms-running.png new file mode 100644 index 0000000..5089c5d Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00040-t074515ms-running.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00041-t074890ms-running.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00041-t074890ms-running.png new file mode 100644 index 0000000..9f68711 Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00041-t074890ms-running.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00042-t075237ms-running.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00042-t075237ms-running.png new file mode 100644 index 0000000..3231193 Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00042-t075237ms-running.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00043-t075650ms-running.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00043-t075650ms-running.png new file mode 100644 index 0000000..4395705 Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00043-t075650ms-running.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00044-t076055ms-running.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00044-t076055ms-running.png new file mode 100644 index 0000000..93f8fc9 Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00044-t076055ms-running.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00045-t076443ms-running.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00045-t076443ms-running.png new file mode 100644 index 0000000..6d0e5ed Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00045-t076443ms-running.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00046-t076772ms-running.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00046-t076772ms-running.png new file mode 100644 index 0000000..6061db8 Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00046-t076772ms-running.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00047-t077120ms-running.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00047-t077120ms-running.png new file mode 100644 index 0000000..bb9d0ee Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00047-t077120ms-running.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00048-t077516ms-running.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00048-t077516ms-running.png new file mode 100644 index 0000000..936aba5 Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00048-t077516ms-running.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00049-t077918ms-running.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00049-t077918ms-running.png new file mode 100644 index 0000000..cbecceb Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00049-t077918ms-running.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00050-t078312ms-running.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00050-t078312ms-running.png new file mode 100644 index 0000000..4ba7f65 Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00050-t078312ms-running.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00051-t078640ms-running.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00051-t078640ms-running.png new file mode 100644 index 0000000..fd338b1 Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00051-t078640ms-running.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00052-t078966ms-running.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00052-t078966ms-running.png new file mode 100644 index 0000000..4b29f9a Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00052-t078966ms-running.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00053-t079283ms-running.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00053-t079283ms-running.png new file mode 100644 index 0000000..126f534 Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00053-t079283ms-running.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00054-t079647ms-running.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00054-t079647ms-running.png new file mode 100644 index 0000000..e2ecc40 Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00054-t079647ms-running.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00055-t079979ms-running.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00055-t079979ms-running.png new file mode 100644 index 0000000..7b5337c Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00055-t079979ms-running.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00056-t080316ms-running.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00056-t080316ms-running.png new file mode 100644 index 0000000..0aa584d Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00056-t080316ms-running.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00057-t080636ms-running.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00057-t080636ms-running.png new file mode 100644 index 0000000..ea56cfc Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00057-t080636ms-running.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00058-t080968ms-running.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00058-t080968ms-running.png new file mode 100644 index 0000000..851f663 Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00058-t080968ms-running.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00059-t081292ms-running.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00059-t081292ms-running.png new file mode 100644 index 0000000..5bf3eaf Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00059-t081292ms-running.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00060-t081618ms-running.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00060-t081618ms-running.png new file mode 100644 index 0000000..ae4c5fa Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00060-t081618ms-running.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00061-t081984ms-running.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00061-t081984ms-running.png new file mode 100644 index 0000000..fbec938 Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00061-t081984ms-running.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00062-t082303ms-running.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00062-t082303ms-running.png new file mode 100644 index 0000000..92063b6 Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00062-t082303ms-running.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00063-t082630ms-running.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00063-t082630ms-running.png new file mode 100644 index 0000000..5ceee0f Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00063-t082630ms-running.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00064-t082933ms-running.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00064-t082933ms-running.png new file mode 100644 index 0000000..440f573 Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00064-t082933ms-running.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00065-t083317ms-running.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00065-t083317ms-running.png new file mode 100644 index 0000000..30c7dc6 Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00065-t083317ms-running.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00066-t083657ms-running.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00066-t083657ms-running.png new file mode 100644 index 0000000..9f04543 Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00066-t083657ms-running.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00067-t084006ms-running.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00067-t084006ms-running.png new file mode 100644 index 0000000..6dd4377 Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00067-t084006ms-running.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00068-t084315ms-running.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00068-t084315ms-running.png new file mode 100644 index 0000000..30938c6 Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00068-t084315ms-running.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00069-t084663ms-running.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00069-t084663ms-running.png new file mode 100644 index 0000000..292a8d3 Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00069-t084663ms-running.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00070-t085004ms-running.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00070-t085004ms-running.png new file mode 100644 index 0000000..9bb129e Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00070-t085004ms-running.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00071-t085332ms-running.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00071-t085332ms-running.png new file mode 100644 index 0000000..7804895 Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00071-t085332ms-running.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00072-t085689ms-running.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00072-t085689ms-running.png new file mode 100644 index 0000000..8fc083c Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00072-t085689ms-running.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00073-t086041ms-running.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00073-t086041ms-running.png new file mode 100644 index 0000000..2f4b0d1 Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00073-t086041ms-running.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00074-t086374ms-running.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00074-t086374ms-running.png new file mode 100644 index 0000000..fba0bdb Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00074-t086374ms-running.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00075-t086690ms-running.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00075-t086690ms-running.png new file mode 100644 index 0000000..f735b95 Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00075-t086690ms-running.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00076-t087041ms-running.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00076-t087041ms-running.png new file mode 100644 index 0000000..aa1c2cc Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00076-t087041ms-running.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00077-t087403ms-running.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00077-t087403ms-running.png new file mode 100644 index 0000000..2a77e3a Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00077-t087403ms-running.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00078-t087756ms-running.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00078-t087756ms-running.png new file mode 100644 index 0000000..d711650 Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00078-t087756ms-running.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00079-t088082ms-running.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00079-t088082ms-running.png new file mode 100644 index 0000000..6d56bcc Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00079-t088082ms-running.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00080-t088457ms-running.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00080-t088457ms-running.png new file mode 100644 index 0000000..aaeeb30 Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00080-t088457ms-running.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00081-t088830ms-running.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00081-t088830ms-running.png new file mode 100644 index 0000000..2c235cc Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00081-t088830ms-running.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00082-t089130ms-running.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00082-t089130ms-running.png new file mode 100644 index 0000000..d056865 Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00082-t089130ms-running.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00083-t089467ms-running.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00083-t089467ms-running.png new file mode 100644 index 0000000..6060ce4 Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00083-t089467ms-running.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00084-t089800ms-running.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00084-t089800ms-running.png new file mode 100644 index 0000000..c0f915d Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00084-t089800ms-running.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00085-t090185ms-running.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00085-t090185ms-running.png new file mode 100644 index 0000000..0bb7559 Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00085-t090185ms-running.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00086-t090517ms-running.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00086-t090517ms-running.png new file mode 100644 index 0000000..5aec2e7 Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00086-t090517ms-running.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00087-t090823ms-running.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00087-t090823ms-running.png new file mode 100644 index 0000000..a664a73 Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00087-t090823ms-running.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00088-t091175ms-running.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00088-t091175ms-running.png new file mode 100644 index 0000000..2af604f Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00088-t091175ms-running.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00089-t091487ms-running.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00089-t091487ms-running.png new file mode 100644 index 0000000..f77377f Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00089-t091487ms-running.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00090-t091818ms-running.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00090-t091818ms-running.png new file mode 100644 index 0000000..837cd4b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00090-t091818ms-running.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00091-t092145ms-running.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00091-t092145ms-running.png new file mode 100644 index 0000000..7a0051c Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00091-t092145ms-running.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00092-t092538ms-running.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00092-t092538ms-running.png new file mode 100644 index 0000000..bc7792f Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00092-t092538ms-running.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00093-t092856ms-running.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00093-t092856ms-running.png new file mode 100644 index 0000000..7ff2f57 Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00093-t092856ms-running.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00094-t093179ms-running.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00094-t093179ms-running.png new file mode 100644 index 0000000..c88fb4d Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00094-t093179ms-running.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00095-t093557ms-running.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00095-t093557ms-running.png new file mode 100644 index 0000000..caf4fa0 Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00095-t093557ms-running.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00096-t093919ms-running.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00096-t093919ms-running.png new file mode 100644 index 0000000..cdafb21 Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00096-t093919ms-running.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00097-t094270ms-running.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00097-t094270ms-running.png new file mode 100644 index 0000000..8c7fba2 Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00097-t094270ms-running.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00098-t094539ms-running.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00098-t094539ms-running.png new file mode 100644 index 0000000..e3479ee Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00098-t094539ms-running.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00099-t094853ms-running.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00099-t094853ms-running.png new file mode 100644 index 0000000..f5c96a1 Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00099-t094853ms-running.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00100-t095168ms-running.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00100-t095168ms-running.png new file mode 100644 index 0000000..3b2bd7c Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00100-t095168ms-running.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00101-t095511ms-running.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00101-t095511ms-running.png new file mode 100644 index 0000000..4d20046 Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00101-t095511ms-running.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00102-t095847ms-running.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00102-t095847ms-running.png new file mode 100644 index 0000000..418e8a2 Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00102-t095847ms-running.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00103-t096160ms-running.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00103-t096160ms-running.png new file mode 100644 index 0000000..4c73031 Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00103-t096160ms-running.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00104-t096474ms-running.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00104-t096474ms-running.png new file mode 100644 index 0000000..7f534b8 Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00104-t096474ms-running.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00105-t096830ms-running.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00105-t096830ms-running.png new file mode 100644 index 0000000..543af68 Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00105-t096830ms-running.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00106-t097162ms-running.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00106-t097162ms-running.png new file mode 100644 index 0000000..5dce570 Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00106-t097162ms-running.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00107-t097492ms-running.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00107-t097492ms-running.png new file mode 100644 index 0000000..422ddb8 Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00107-t097492ms-running.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00108-t097789ms-running.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00108-t097789ms-running.png new file mode 100644 index 0000000..813d6d7 Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00108-t097789ms-running.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00109-t098119ms-running.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00109-t098119ms-running.png new file mode 100644 index 0000000..4876902 Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00109-t098119ms-running.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00110-t098462ms-running.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00110-t098462ms-running.png new file mode 100644 index 0000000..052cb38 Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00110-t098462ms-running.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00111-t098805ms-running.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00111-t098805ms-running.png new file mode 100644 index 0000000..28e168a Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00111-t098805ms-running.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00112-t099170ms-running.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00112-t099170ms-running.png new file mode 100644 index 0000000..10b4810 Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00112-t099170ms-running.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00113-t099483ms-running.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00113-t099483ms-running.png new file mode 100644 index 0000000..6dec66f Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00113-t099483ms-running.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00114-t099804ms-running.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00114-t099804ms-running.png new file mode 100644 index 0000000..da8997c Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00114-t099804ms-running.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00115-t100159ms-running.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00115-t100159ms-running.png new file mode 100644 index 0000000..7b39108 Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00115-t100159ms-running.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00116-t100468ms-running.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00116-t100468ms-running.png new file mode 100644 index 0000000..f9475e4 Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00116-t100468ms-running.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00117-t100818ms-running.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00117-t100818ms-running.png new file mode 100644 index 0000000..acf131e Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00117-t100818ms-running.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00118-t101146ms-running.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00118-t101146ms-running.png new file mode 100644 index 0000000..e310ac0 Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00118-t101146ms-running.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00119-t101495ms-running.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00119-t101495ms-running.png new file mode 100644 index 0000000..41ce513 Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00119-t101495ms-running.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00120-t101875ms-running.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00120-t101875ms-running.png new file mode 100644 index 0000000..8408fe4 Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00120-t101875ms-running.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00121-t102209ms-running.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00121-t102209ms-running.png new file mode 100644 index 0000000..ae58856 Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00121-t102209ms-running.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00122-t102556ms-running.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00122-t102556ms-running.png new file mode 100644 index 0000000..f792695 Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00122-t102556ms-running.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00123-t102890ms-running.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00123-t102890ms-running.png new file mode 100644 index 0000000..4e1f9d5 Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00123-t102890ms-running.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00124-t103218ms-running.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00124-t103218ms-running.png new file mode 100644 index 0000000..f203d9f Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00124-t103218ms-running.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00125-t103539ms-running.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00125-t103539ms-running.png new file mode 100644 index 0000000..060629d Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00125-t103539ms-running.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00126-t103846ms-running.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00126-t103846ms-running.png new file mode 100644 index 0000000..6e4d731 Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00126-t103846ms-running.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00127-t104172ms-running.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00127-t104172ms-running.png new file mode 100644 index 0000000..8a87874 Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00127-t104172ms-running.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00128-t104498ms-running.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00128-t104498ms-running.png new file mode 100644 index 0000000..08460aa Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00128-t104498ms-running.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00129-t104853ms-running.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00129-t104853ms-running.png new file mode 100644 index 0000000..6c136d3 Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00129-t104853ms-running.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00130-t105176ms-running.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00130-t105176ms-running.png new file mode 100644 index 0000000..4fc6f59 Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00130-t105176ms-running.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00131-t105518ms-running.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00131-t105518ms-running.png new file mode 100644 index 0000000..2051fe0 Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00131-t105518ms-running.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00132-t105860ms-running.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00132-t105860ms-running.png new file mode 100644 index 0000000..99f4574 Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00132-t105860ms-running.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00133-t106220ms-running.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00133-t106220ms-running.png new file mode 100644 index 0000000..cb3e854 Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00133-t106220ms-running.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00134-t106532ms-running.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00134-t106532ms-running.png new file mode 100644 index 0000000..330b02a Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00134-t106532ms-running.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00135-t106856ms-running.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00135-t106856ms-running.png new file mode 100644 index 0000000..b51c321 Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00135-t106856ms-running.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00136-t107183ms-running.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00136-t107183ms-running.png new file mode 100644 index 0000000..e4cf5fc Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00136-t107183ms-running.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00137-t107538ms-running.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00137-t107538ms-running.png new file mode 100644 index 0000000..6d8bdac Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00137-t107538ms-running.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00138-t107898ms-running.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00138-t107898ms-running.png new file mode 100644 index 0000000..b5febc4 Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00138-t107898ms-running.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00139-t108272ms-running.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00139-t108272ms-running.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00139-t108272ms-running.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00140-t108536ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00140-t108536ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00140-t108536ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00141-t108731ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00141-t108731ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00141-t108731ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00142-t108913ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00142-t108913ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00142-t108913ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00143-t109090ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00143-t109090ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00143-t109090ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00144-t109260ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00144-t109260ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00144-t109260ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00145-t109469ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00145-t109469ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00145-t109469ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00146-t109635ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00146-t109635ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00146-t109635ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00147-t109803ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00147-t109803ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00147-t109803ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00148-t109968ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00148-t109968ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00148-t109968ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00149-t110143ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00149-t110143ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00149-t110143ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00150-t110303ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00150-t110303ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00150-t110303ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00151-t110471ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00151-t110471ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00151-t110471ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00152-t110639ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00152-t110639ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00152-t110639ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00153-t110802ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00153-t110802ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00153-t110802ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00154-t110969ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00154-t110969ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00154-t110969ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00155-t111138ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00155-t111138ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00155-t111138ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00156-t111300ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00156-t111300ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00156-t111300ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00157-t111454ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00157-t111454ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00157-t111454ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00158-t111622ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00158-t111622ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00158-t111622ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00159-t111783ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00159-t111783ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00159-t111783ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00160-t111949ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00160-t111949ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00160-t111949ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00161-t112121ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00161-t112121ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00161-t112121ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00162-t112282ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00162-t112282ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00162-t112282ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00163-t112446ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00163-t112446ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00163-t112446ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00164-t112618ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00164-t112618ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00164-t112618ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00165-t112788ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00165-t112788ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00165-t112788ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00166-t112951ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00166-t112951ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00166-t112951ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00167-t113118ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00167-t113118ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00167-t113118ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00168-t113288ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00168-t113288ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00168-t113288ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00169-t113456ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00169-t113456ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00169-t113456ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00170-t113621ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00170-t113621ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00170-t113621ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00171-t113790ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00171-t113790ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00171-t113790ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00172-t113953ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00172-t113953ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00172-t113953ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00173-t114128ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00173-t114128ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00173-t114128ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00174-t114299ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00174-t114299ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00174-t114299ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00175-t114472ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00175-t114472ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00175-t114472ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00176-t114636ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00176-t114636ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00176-t114636ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00177-t114808ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00177-t114808ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00177-t114808ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00178-t114966ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00178-t114966ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00178-t114966ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00179-t115139ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00179-t115139ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00179-t115139ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00180-t115301ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00180-t115301ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00180-t115301ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00181-t115507ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00181-t115507ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00181-t115507ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00182-t115694ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00182-t115694ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00182-t115694ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00183-t115848ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00183-t115848ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00183-t115848ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00184-t116020ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00184-t116020ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00184-t116020ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00185-t116187ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00185-t116187ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00185-t116187ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00186-t116352ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00186-t116352ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00186-t116352ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00187-t116519ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00187-t116519ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00187-t116519ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00188-t116688ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00188-t116688ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00188-t116688ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00189-t116855ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00189-t116855ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00189-t116855ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00190-t117021ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00190-t117021ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00190-t117021ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00191-t117201ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00191-t117201ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00191-t117201ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00192-t117369ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00192-t117369ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00192-t117369ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00193-t117542ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00193-t117542ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00193-t117542ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00194-t117708ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00194-t117708ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00194-t117708ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00195-t117873ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00195-t117873ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00195-t117873ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00196-t118038ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00196-t118038ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00196-t118038ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00197-t118207ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00197-t118207ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00197-t118207ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00198-t118381ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00198-t118381ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00198-t118381ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00199-t118557ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00199-t118557ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00199-t118557ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00200-t118724ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00200-t118724ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00200-t118724ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00201-t118905ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00201-t118905ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00201-t118905ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00202-t119071ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00202-t119071ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00202-t119071ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00203-t119254ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00203-t119254ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00203-t119254ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00204-t119423ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00204-t119423ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00204-t119423ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00205-t119589ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00205-t119589ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00205-t119589ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00206-t119765ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00206-t119765ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00206-t119765ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00207-t119929ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00207-t119929ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00207-t119929ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00208-t120107ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00208-t120107ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00208-t120107ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00209-t120276ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00209-t120276ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00209-t120276ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00210-t120435ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00210-t120435ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00210-t120435ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00211-t120601ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00211-t120601ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00211-t120601ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00212-t120770ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00212-t120770ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00212-t120770ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00213-t120961ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00213-t120961ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00213-t120961ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00214-t121123ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00214-t121123ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00214-t121123ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00215-t121305ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00215-t121305ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00215-t121305ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00216-t121479ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00216-t121479ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00216-t121479ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00217-t121695ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00217-t121695ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00217-t121695ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00218-t121880ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00218-t121880ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00218-t121880ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00219-t122054ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00219-t122054ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00219-t122054ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00220-t122221ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00220-t122221ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00220-t122221ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00221-t122386ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00221-t122386ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00221-t122386ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00222-t122554ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00222-t122554ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00222-t122554ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00223-t122720ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00223-t122720ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00223-t122720ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00224-t122913ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00224-t122913ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00224-t122913ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00225-t123075ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00225-t123075ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00225-t123075ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00226-t123236ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00226-t123236ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00226-t123236ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00227-t123402ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00227-t123402ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00227-t123402ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00228-t123573ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00228-t123573ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00228-t123573ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00229-t123743ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00229-t123743ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00229-t123743ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00230-t123921ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00230-t123921ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00230-t123921ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00231-t124090ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00231-t124090ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00231-t124090ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00232-t124255ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00232-t124255ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00232-t124255ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00233-t124417ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00233-t124417ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00233-t124417ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00234-t124589ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00234-t124589ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00234-t124589ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00235-t124782ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00235-t124782ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00235-t124782ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00236-t124961ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00236-t124961ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00236-t124961ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00237-t125140ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00237-t125140ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00237-t125140ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00238-t125310ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00238-t125310ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00238-t125310ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00239-t125481ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00239-t125481ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00239-t125481ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00240-t125657ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00240-t125657ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00240-t125657ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00241-t125838ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00241-t125838ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00241-t125838ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00242-t126010ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00242-t126010ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00242-t126010ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00243-t126190ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00243-t126190ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00243-t126190ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00244-t126354ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00244-t126354ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00244-t126354ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00245-t126524ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00245-t126524ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00245-t126524ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00246-t126715ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00246-t126715ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00246-t126715ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00247-t126871ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00247-t126871ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00247-t126871ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00248-t127035ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00248-t127035ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00248-t127035ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00249-t127200ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00249-t127200ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00249-t127200ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00250-t127365ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00250-t127365ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00250-t127365ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00251-t127538ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00251-t127538ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00251-t127538ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00252-t127729ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00252-t127729ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00252-t127729ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00253-t127922ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00253-t127922ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00253-t127922ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00254-t128103ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00254-t128103ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00254-t128103ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00255-t128268ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00255-t128268ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00255-t128268ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00256-t128440ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00256-t128440ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00256-t128440ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00257-t128604ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00257-t128604ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00257-t128604ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00258-t128774ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00258-t128774ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00258-t128774ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00259-t128943ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00259-t128943ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00259-t128943ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00260-t129116ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00260-t129116ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00260-t129116ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00261-t129286ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00261-t129286ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00261-t129286ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00262-t129462ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00262-t129462ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00262-t129462ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00263-t129621ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00263-t129621ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00263-t129621ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00264-t129795ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00264-t129795ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00264-t129795ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00265-t129952ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00265-t129952ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00265-t129952ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00266-t130121ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00266-t130121ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00266-t130121ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00267-t130288ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00267-t130288ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00267-t130288ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00268-t130455ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00268-t130455ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00268-t130455ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00269-t130623ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00269-t130623ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00269-t130623ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00270-t130788ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00270-t130788ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00270-t130788ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00271-t130958ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00271-t130958ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00271-t130958ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00272-t131120ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00272-t131120ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00272-t131120ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00273-t131289ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00273-t131289ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00273-t131289ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00274-t131455ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00274-t131455ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00274-t131455ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00275-t131626ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00275-t131626ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00275-t131626ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00276-t131788ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00276-t131788ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00276-t131788ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00277-t131952ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00277-t131952ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00277-t131952ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00278-t132141ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00278-t132141ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00278-t132141ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00279-t132309ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00279-t132309ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00279-t132309ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00280-t132485ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00280-t132485ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00280-t132485ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00281-t132656ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00281-t132656ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00281-t132656ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00282-t132819ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00282-t132819ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00282-t132819ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00283-t133003ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00283-t133003ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00283-t133003ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00284-t133188ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00284-t133188ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00284-t133188ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00285-t133364ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00285-t133364ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00285-t133364ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00286-t133543ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00286-t133543ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00286-t133543ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00287-t133718ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00287-t133718ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00287-t133718ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00288-t133891ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00288-t133891ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00288-t133891ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00289-t134109ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00289-t134109ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00289-t134109ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00290-t134289ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00290-t134289ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00290-t134289ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00291-t134454ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00291-t134454ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00291-t134454ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00292-t134619ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00292-t134619ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00292-t134619ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00293-t134783ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00293-t134783ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00293-t134783ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00294-t134955ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00294-t134955ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00294-t134955ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00295-t135122ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00295-t135122ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00295-t135122ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00296-t135287ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00296-t135287ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00296-t135287ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00297-t135446ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00297-t135446ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00297-t135446ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00298-t135600ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00298-t135600ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00298-t135600ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00299-t135761ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00299-t135761ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00299-t135761ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00300-t135928ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00300-t135928ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00300-t135928ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00301-t136094ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00301-t136094ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00301-t136094ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00302-t136254ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00302-t136254ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00302-t136254ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00303-t136420ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00303-t136420ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00303-t136420ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00304-t136585ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00304-t136585ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00304-t136585ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00305-t136754ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00305-t136754ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00305-t136754ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00306-t136917ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00306-t136917ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00306-t136917ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00307-t137089ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00307-t137089ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00307-t137089ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00308-t137248ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00308-t137248ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00308-t137248ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00309-t137418ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00309-t137418ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00309-t137418ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00310-t137588ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00310-t137588ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00310-t137588ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00311-t137759ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00311-t137759ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00311-t137759ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00312-t137926ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00312-t137926ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00312-t137926ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00313-t138082ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00313-t138082ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00313-t138082ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00314-t138252ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00314-t138252ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00314-t138252ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00315-t138417ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00315-t138417ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00315-t138417ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00316-t138585ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00316-t138585ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00316-t138585ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00317-t138750ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00317-t138750ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00317-t138750ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00318-t138919ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00318-t138919ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00318-t138919ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00319-t139086ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00319-t139086ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00319-t139086ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00320-t139257ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00320-t139257ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00320-t139257ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00321-t139437ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00321-t139437ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00321-t139437ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00322-t139605ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00322-t139605ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00322-t139605ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00323-t139773ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00323-t139773ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00323-t139773ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00324-t139943ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00324-t139943ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00324-t139943ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00325-t140140ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00325-t140140ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00325-t140140ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00326-t140307ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00326-t140307ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00326-t140307ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00327-t140470ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00327-t140470ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00327-t140470ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00328-t140635ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00328-t140635ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00328-t140635ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00329-t140802ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00329-t140802ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00329-t140802ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00330-t140977ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00330-t140977ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00330-t140977ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00331-t141133ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00331-t141133ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00331-t141133ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00332-t141300ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00332-t141300ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00332-t141300ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00333-t141476ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00333-t141476ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00333-t141476ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00334-t141631ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00334-t141631ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00334-t141631ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00335-t141799ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00335-t141799ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00335-t141799ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00336-t141964ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00336-t141964ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00336-t141964ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00337-t142134ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00337-t142134ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00337-t142134ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00338-t142301ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00338-t142301ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00338-t142301ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00339-t142466ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00339-t142466ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00339-t142466ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00340-t142635ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00340-t142635ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00340-t142635ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00341-t142802ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00341-t142802ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00341-t142802ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00342-t142966ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00342-t142966ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00342-t142966ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00343-t143133ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00343-t143133ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00343-t143133ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00344-t143300ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00344-t143300ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00344-t143300ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00345-t143470ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00345-t143470ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00345-t143470ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00346-t143634ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00346-t143634ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00346-t143634ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00347-t143801ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00347-t143801ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00347-t143801ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00348-t143954ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00348-t143954ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00348-t143954ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00349-t144117ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00349-t144117ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00349-t144117ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00350-t144286ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00350-t144286ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00350-t144286ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00351-t144449ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00351-t144449ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00351-t144449ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00352-t144619ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00352-t144619ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00352-t144619ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00353-t144781ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00353-t144781ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00353-t144781ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00354-t144950ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00354-t144950ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00354-t144950ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00355-t145108ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00355-t145108ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00355-t145108ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00356-t145285ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00356-t145285ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00356-t145285ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00357-t145452ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00357-t145452ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00357-t145452ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00358-t145618ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00358-t145618ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00358-t145618ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00359-t145787ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00359-t145787ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00359-t145787ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00360-t145955ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00360-t145955ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00360-t145955ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00361-t146159ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00361-t146159ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00361-t146159ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00362-t146373ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00362-t146373ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00362-t146373ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00363-t146554ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00363-t146554ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00363-t146554ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00364-t146720ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00364-t146720ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00364-t146720ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00365-t146904ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00365-t146904ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00365-t146904ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00366-t147071ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00366-t147071ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00366-t147071ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00367-t147233ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00367-t147233ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00367-t147233ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00368-t147402ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00368-t147402ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00368-t147402ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00369-t147575ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00369-t147575ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00369-t147575ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00370-t147731ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00370-t147731ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00370-t147731ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00371-t147899ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00371-t147899ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00371-t147899ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00372-t148067ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00372-t148067ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00372-t148067ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00373-t148232ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00373-t148232ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00373-t148232ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00374-t148384ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00374-t148384ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00374-t148384ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00375-t148550ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00375-t148550ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00375-t148550ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00376-t148722ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00376-t148722ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00376-t148722ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00377-t148892ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00377-t148892ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00377-t148892ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00378-t149077ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00378-t149077ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00378-t149077ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00379-t149245ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00379-t149245ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00379-t149245ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00380-t149415ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00380-t149415ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00380-t149415ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00381-t149591ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00381-t149591ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00381-t149591ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00382-t149758ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00382-t149758ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00382-t149758ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00383-t149920ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00383-t149920ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00383-t149920ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00384-t150104ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00384-t150104ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00384-t150104ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00385-t150287ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00385-t150287ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00385-t150287ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00386-t150452ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00386-t150452ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00386-t150452ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00387-t150617ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00387-t150617ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00387-t150617ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00388-t150789ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00388-t150789ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00388-t150789ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00389-t150947ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00389-t150947ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00389-t150947ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00390-t151104ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00390-t151104ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00390-t151104ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00391-t151270ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00391-t151270ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00391-t151270ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00392-t151436ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00392-t151436ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00392-t151436ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00393-t151604ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00393-t151604ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00393-t151604ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00394-t151770ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00394-t151770ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00394-t151770ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00395-t151935ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00395-t151935ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00395-t151935ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00396-t152104ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00396-t152104ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00396-t152104ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00397-t152307ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00397-t152307ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00397-t152307ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00398-t152491ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00398-t152491ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00398-t152491ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00399-t152674ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00399-t152674ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00399-t152674ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00400-t152850ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00400-t152850ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00400-t152850ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00401-t153025ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00401-t153025ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00401-t153025ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00402-t153202ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00402-t153202ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00402-t153202ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00403-t153365ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00403-t153365ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00403-t153365ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00404-t153535ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00404-t153535ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00404-t153535ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00405-t153700ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00405-t153700ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00405-t153700ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00406-t153865ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00406-t153865ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00406-t153865ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00407-t154035ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00407-t154035ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00407-t154035ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00408-t154201ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00408-t154201ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00408-t154201ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00409-t154363ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00409-t154363ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00409-t154363ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00410-t154533ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00410-t154533ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00410-t154533ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00411-t154700ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00411-t154700ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00411-t154700ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00412-t154866ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00412-t154866ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00412-t154866ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00413-t155036ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00413-t155036ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00413-t155036ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00414-t155204ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00414-t155204ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00414-t155204ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00415-t155365ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00415-t155365ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00415-t155365ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00416-t155535ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00416-t155535ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00416-t155535ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00417-t155706ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00417-t155706ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00417-t155706ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00418-t155878ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00418-t155878ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00418-t155878ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00419-t156039ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00419-t156039ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00419-t156039ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00420-t156199ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00420-t156199ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00420-t156199ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00421-t156371ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00421-t156371ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00421-t156371ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00422-t156539ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00422-t156539ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00422-t156539ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00423-t156704ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00423-t156704ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00423-t156704ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00424-t156871ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00424-t156871ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00424-t156871ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00425-t157054ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00425-t157054ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00425-t157054ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00426-t157235ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00426-t157235ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00426-t157235ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00427-t157415ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00427-t157415ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00427-t157415ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00428-t157581ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00428-t157581ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00428-t157581ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00429-t157734ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00429-t157734ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00429-t157734ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00430-t157902ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00430-t157902ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00430-t157902ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00431-t158068ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00431-t158068ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00431-t158068ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00432-t158238ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00432-t158238ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00432-t158238ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00433-t158422ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00433-t158422ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00433-t158422ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00434-t158584ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00434-t158584ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00434-t158584ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00435-t158751ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00435-t158751ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00435-t158751ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00436-t158932ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00436-t158932ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00436-t158932ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00437-t159092ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00437-t159092ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00437-t159092ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00438-t159255ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00438-t159255ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00438-t159255ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00439-t159435ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00439-t159435ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00439-t159435ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00440-t159605ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00440-t159605ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00440-t159605ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00441-t159772ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00441-t159772ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00441-t159772ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00442-t159932ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00442-t159932ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00442-t159932ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00443-t160104ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00443-t160104ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00443-t160104ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00444-t160268ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00444-t160268ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00444-t160268ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00445-t160435ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00445-t160435ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00445-t160435ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00446-t160602ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00446-t160602ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00446-t160602ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00447-t160767ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00447-t160767ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00447-t160767ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00448-t160933ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00448-t160933ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00448-t160933ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00449-t161088ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00449-t161088ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00449-t161088ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00450-t161257ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00450-t161257ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00450-t161257ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00451-t161443ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00451-t161443ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00451-t161443ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00452-t161601ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00452-t161601ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00452-t161601ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00453-t161775ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00453-t161775ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00453-t161775ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00454-t161952ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00454-t161952ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00454-t161952ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00455-t162120ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00455-t162120ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00455-t162120ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00456-t162285ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00456-t162285ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00456-t162285ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00457-t162449ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00457-t162449ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00457-t162449ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00458-t162618ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00458-t162618ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00458-t162618ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00459-t162787ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00459-t162787ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00459-t162787ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00460-t162966ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00460-t162966ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00460-t162966ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00461-t163134ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00461-t163134ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00461-t163134ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00462-t163298ms-complete.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00462-t163298ms-complete.png new file mode 100644 index 0000000..656b99b Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/frame-00462-t163298ms-complete.png differ diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/manifest.json b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/manifest.json new file mode 100644 index 0000000..2f44bee --- /dev/null +++ b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/manifest.json @@ -0,0 +1,168399 @@ +{ + "apiName": "xyzbc-trt-estop-power-home-run-pause-50ms-verification", + "status": "passed", + "capturedAt": "2026-07-07T15:00:58.237Z", + "projectRoot": "/home/mes123456/cnc_wams/web-rtcp-5axis-xyzbc-trt-sim-plan", + "linuxCncSourceRoot": "/home/mes123456/cnc_wams/linuxcnc", + "appUrl": "http://127.0.0.1:45005/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-20260707T145810Z", + "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, + "runStableBeforeFirstPauseMs": 3000, + "expectedSequence": [ + "解除 ESTOP", + "上电", + "Home All", + "Run", + "Run 后稳定运行 3000ms", + "第一次暂停并保持 5 秒", + "第一次继续执行 10 秒", + "第二次暂停并保持 5 秒", + "第二次继续执行 10 秒" + ], + "events": [ + { + "label": "setup-estop-active", + "at": "2026-07-07T14:58:14.670Z", + "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": "estopped", + "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, + "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": 10, + "taskCycle": 1, + "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": "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-07T14:58:15.629Z", + "elapsedMs": 878, + "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": "estopped", + "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, + "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": 10, + "taskCycle": 1, + "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": "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": "idle", + "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": "estop reset; machine off" + } + }, + { + "label": "上电", + "selector": "[data-action=\"power\"]", + "at": "2026-07-07T14:58:16.596Z", + "elapsedMs": 874, + "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": "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, + "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": 10, + "taskCycle": 1, + "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": "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-07T14:58:17.477Z", + "elapsedMs": 797, + "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, + "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": "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": 3600, + "operatorMessage": "task/HAL machine homed" + } + }, + { + "label": "Run", + "selector": "[data-action=\"run\"]", + "at": "2026-07-07T14:58:21.116Z", + "elapsedMs": 3546, + "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": "motion-status", + "activeLineHalSynced": true, + "type": "TASK_MOTION", + "paused": false, + "timeSeconds": 0, + "axisPose": { + "x": 0, + "y": 0, + "z": 10, + "a": 0, + "b": 0, + "c": 0 + }, + "currentVelocityMmPerMin": 3600, + "requestedVelocityMmPerMin": 3600, + "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": 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": 3600, + "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": "running", + "taskState": "on", + "powerOn": true, + "estopActive": false, + "allHomed": true, + "mode": "auto", + "interpState": "reading", + "taskPaused": false, + "motionPaused": false, + "activeLine": 16, + "sampleIndex": 0, + "programExecutionSourceMode": "linuxcnc-machine-file-remap-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, + "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": 30, + "operatorMessage": "LinuxCNC interpreter motion events 29" + } + }, + { + "label": "Run 后稳定运行 3000ms", + "at": "2026-07-07T14:58:24.777Z", + "durationMs": 3661, + "state": { + "runState": "running", + "taskState": "on", + "powerOn": true, + "estopActive": false, + "allHomed": true, + "mode": "auto", + "interpState": "reading", + "taskPaused": false, + "motionPaused": false, + "activeLine": 16, + "sampleIndex": 46, + "programExecutionSourceMode": "linuxcnc-task-motion-hal-wasm", + "programUiExecution": { + "apiName": "web-rtcp-5axis-ui-gcode-live-execution", + "status": "running", + "source": "programAxisPreviewPath.samples", + "samplePeriodMs": 50, + "sampleIndex": 46, + "sampleCount": 1300, + "executedSampleCount": 47, + "timeMs": 2300, + "activeProgram": "configs/sim/axis/vismach/5axis/table-rotary-tilting/demos/xyzbc_switchkins.ngc", + "sourceFile": "helix_bc.ngc", + "line": 16, + "statement": "g0b#c#", + "operation": "rapid-bc-orient", + "executionIndex": 10, + "gcodeStepIndex": 34, + "segmentIndex": 3, + "motionType": "rapid", + "activeKinematics": "tcp-xyzbc", + "joint": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 15.1724, + "c": 34.1379 + }, + "tcp": { + "x": 10, + "y": 20, + "z": 10 + }, + "toolAxis": { + "i": 0.2166265071126894, + "j": 0.14687641623482095, + "k": 0.9651426188756621 + }, + "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": 203.7696, + "operatorMessage": "task/HAL status tick 45" + }, + "frozenPosition": null, + "movedDuringHold": true + }, + { + "label": "第一次暂停", + "selector": "[data-tool-id=\"tbtn_pause\"]", + "at": "2026-07-07T14:58:28.127Z", + "elapsedMs": 3242, + "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": 103, + "programRuntimeFeedback": { + "apiName": "web-rtcp-5axis-program-runtime-feedback", + "sourceMode": "linuxcnc-task-motion-hal-wasm", + "semanticBoundary": "linuxcnc_task_motion_hal_wasm_simulation_runtime", + "sampleIndex": 103, + "motionIndex": 4, + "line": 17, + "motionProgramLine": 17, + "halProgramLine": 17, + "activeLineSource": "motion-status", + "activeLineHalSynced": true, + "type": "TASK_MOTION", + "paused": false, + "timeSeconds": 0, + "axisPose": { + "x": 25.3161, + "y": 28.4699, + "z": 8.89868, + "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": 5180, + "taskCycle": 518, + "halChangedPinCount": 0, + "sourceFile": "helix_bc.ngc", + "statement": "f# g2i#z# p#", + "motionType": "arc", + "activeKinematics": "tcp-xyzbc", + "tcp": { + "x": 25.3161, + "y": 28.4699, + "z": 8.89868 + }, + "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": 25.3161, + "y": 28.4699, + "z": 8.89868, + "a": 0, + "b": 20, + "c": 45 + }, + "dro": { + "x": 25.3161, + "y": 28.4699, + "z": 8.89868, + "a": 0, + "b": 20, + "c": 45, + "tcpX": 25.3161, + "tcpY": 28.4699, + "tcpZ": 8.89868, + "dtgX": 0, + "dtgY": 0, + "dtgZ": 0 + }, + "programUiExecution": { + "apiName": "web-rtcp-5axis-ui-gcode-live-execution", + "status": "running", + "source": "programAxisPreviewPath.samples", + "samplePeriodMs": 50, + "sampleIndex": 103, + "sampleCount": 1300, + "executedSampleCount": 104, + "timeMs": 5150, + "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": 25.3161, + "y": 28.4699, + "z": 8.89868, + "a": 0, + "b": 20, + "c": 45 + }, + "tcp": { + "x": 25.3161, + "y": 28.4699, + "z": 8.89868 + }, + "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 102", + "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.025, + "y": 0.028, + "z": 0.009 + }, + "canvasVismachPins": null, + "programPaneDataset": { + "region": "program", + "liveSourceFile": "helix_bc.ngc", + "liveSourceLine": "17", + "liveSampleIndex": "103", + "liveExecutedSamples": "104", + "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": "103" + } + }, + "after": { + "runState": "paused", + "taskState": "on", + "powerOn": true, + "estopActive": false, + "allHomed": true, + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "motionPaused": true, + "activeLine": 17, + "sampleIndex": 111, + "programExecutionSourceMode": "linuxcnc-task-motion-hal-wasm", + "programUiExecution": { + "apiName": "web-rtcp-5axis-ui-gcode-live-execution", + "status": "paused", + "source": "programAxisPreviewPath.samples", + "samplePeriodMs": 50, + "sampleIndex": 111, + "sampleCount": 1300, + "executedSampleCount": 112, + "timeMs": 5550, + "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": 18.9639, + "y": 29.9462, + "z": 8.72247, + "a": 0, + "b": 20, + "c": 45 + }, + "tcp": { + "x": -1.3556551129202354, + "y": 9.62664488707977, + "z": -70.22956430581124 + }, + "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-07T14:58:35.528Z", + "durationMs": 7401, + "state": { + "runState": "paused", + "taskState": "on", + "powerOn": true, + "estopActive": false, + "allHomed": true, + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "motionPaused": true, + "activeLine": 17, + "sampleIndex": 111, + "programExecutionSourceMode": "linuxcnc-task-motion-hal-wasm", + "programUiExecution": { + "apiName": "web-rtcp-5axis-ui-gcode-live-execution", + "status": "paused", + "source": "programAxisPreviewPath.samples", + "samplePeriodMs": 50, + "sampleIndex": 111, + "sampleCount": 1300, + "executedSampleCount": 112, + "timeMs": 5550, + "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": 18.9639, + "y": 29.9462, + "z": 8.72247, + "a": 0, + "b": 20, + "c": 45 + }, + "tcp": { + "x": -1.3556551129202354, + "y": 9.62664488707977, + "z": -70.22956430581124 + }, + "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 143" + }, + "frozenPosition": { + "axisPose": { + "x": 18.9639, + "y": 29.9462, + "z": 8.72247, + "a": 0, + "b": 20, + "c": 45 + }, + "dro": { + "x": 18.9639, + "y": 29.9462, + "z": 8.72247, + "a": 0, + "b": 20, + "c": 45, + "tcpX": -1.3556551129202354, + "tcpY": 9.62664488707977, + "tcpZ": -70.22956430581124, + "dtgX": 0, + "dtgY": 0, + "dtgZ": 0 + }, + "canvasToolhead": { + "x": -0.001, + "y": 0.01, + "z": -0.07 + }, + "canvasVismachPins": null + }, + "movedDuringHold": null + }, + { + "label": "第一次继续执行", + "selector": "[data-tool-id=\"tbtn_pause\"]", + "at": "2026-07-07T14:58:40.248Z", + "elapsedMs": 4596, + "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": 111, + "programRuntimeFeedback": { + "apiName": "web-rtcp-5axis-program-runtime-feedback", + "sourceMode": "linuxcnc-task-motion-hal-wasm", + "semanticBoundary": "linuxcnc_task_motion_hal_wasm_simulation_runtime", + "sampleIndex": 111, + "motionIndex": 4, + "line": 17, + "motionProgramLine": 17, + "halProgramLine": 17, + "activeLineSource": "motion-status", + "activeLineHalSynced": true, + "type": "TASK_MOTION", + "paused": true, + "timeSeconds": 0, + "axisPose": { + "x": 18.9639, + "y": 29.9462, + "z": 8.72247, + "a": 0, + "b": 20, + "c": 45 + }, + "currentVelocityMmPerMin": 0, + "requestedVelocityMmPerMin": 0, + "distanceToGo": 1, + "dtg": { + "x": 0, + "y": 0, + "z": 0 + }, + "queueDepth": 0, + "activeDepth": 1, + "cycle": 7820, + "taskCycle": 782, + "halChangedPinCount": 0, + "tcp": { + "x": -1.3556551129202354, + "y": 9.62664488707977, + "z": -70.22956430581124 + } + }, + "axisPose": { + "x": 18.9639, + "y": 29.9462, + "z": 8.72247, + "a": 0, + "b": 20, + "c": 45 + }, + "dro": { + "x": 18.9639, + "y": 29.9462, + "z": 8.72247, + "a": 0, + "b": 20, + "c": 45, + "tcpX": -1.3556551129202354, + "tcpY": 9.62664488707977, + "tcpZ": -70.22956430581124, + "dtgX": 0, + "dtgY": 0, + "dtgZ": 0 + }, + "programUiExecution": { + "apiName": "web-rtcp-5axis-ui-gcode-live-execution", + "status": "paused", + "source": "programAxisPreviewPath.samples", + "samplePeriodMs": 50, + "sampleIndex": 111, + "sampleCount": 1300, + "executedSampleCount": 112, + "timeMs": 5550, + "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": 18.9639, + "y": 29.9462, + "z": 8.72247, + "a": 0, + "b": 20, + "c": 45 + }, + "tcp": { + "x": -1.3556551129202354, + "y": 9.62664488707977, + "z": -70.22956430581124 + }, + "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 223", + "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.001, + "y": 0.01, + "z": -0.07 + }, + "canvasVismachPins": null, + "programPaneDataset": { + "region": "program", + "liveSourceFile": "helix_bc.ngc", + "liveSourceLine": "17", + "liveSampleIndex": "111", + "liveExecutedSamples": "112", + "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": "111" + } + }, + "after": { + "runState": "running", + "taskState": "on", + "powerOn": true, + "estopActive": false, + "allHomed": true, + "mode": "auto", + "interpState": "reading", + "taskPaused": false, + "motionPaused": false, + "activeLine": 17, + "sampleIndex": 114, + "programExecutionSourceMode": "linuxcnc-task-motion-hal-wasm", + "programUiExecution": { + "apiName": "web-rtcp-5axis-ui-gcode-live-execution", + "status": "running", + "source": "programAxisPreviewPath.samples", + "samplePeriodMs": 50, + "sampleIndex": 114, + "sampleCount": 1300, + "executedSampleCount": 115, + "timeMs": 5700, + "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": 16.2371, + "y": 29.2561, + "z": 8.64758, + "a": 0, + "b": 20, + "c": 45 + }, + "tcp": { + "x": 16.2371, + "y": 29.2561, + "z": 8.64758 + }, + "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 3" + } + }, + { + "label": "第一次继续执行 10 秒", + "at": "2026-07-07T14:58:53.370Z", + "durationMs": 13123, + "state": { + "runState": "running", + "taskState": "on", + "powerOn": true, + "estopActive": false, + "allHomed": true, + "mode": "auto", + "interpState": "reading", + "taskPaused": false, + "motionPaused": false, + "activeLine": 19, + "sampleIndex": 282, + "programExecutionSourceMode": "linuxcnc-task-motion-hal-wasm", + "programUiExecution": { + "apiName": "web-rtcp-5axis-ui-gcode-live-execution", + "status": "running", + "source": "programAxisPreviewPath.samples", + "samplePeriodMs": 50, + "sampleIndex": 282, + "sampleCount": 1300, + "executedSampleCount": 283, + "timeMs": 14100, + "activeProgram": "configs/sim/axis/vismach/5axis/table-rotary-tilting/demos/xyzbc_switchkins.ngc", + "sourceFile": "helix_bc.ngc", + "line": 19, + "statement": "g0 x0 y0 z# b0 c0", + "operation": "rapid-return-to-start", + "executionIndex": 13, + "gcodeStepIndex": 37, + "segmentIndex": 5, + "motionType": "rapid", + "activeKinematics": "identity", + "joint": { + "x": 9.25, + "y": 18.5, + "z": 5.375, + "a": 0, + "b": 18.5, + "c": 41.625 + }, + "tcp": { + "x": 9.25, + "y": 18.5, + "z": 5.375 + }, + "toolAxis": { + "i": 0.2381709335498739, + "j": 0.21586555136557564, + "k": 0.9469301294951057 + }, + "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": 859.2299999999999, + "operatorMessage": "task/HAL status tick 171" + }, + "frozenPosition": null, + "movedDuringHold": null + }, + { + "label": "第二次暂停", + "selector": "[data-tool-id=\"tbtn_pause\"]", + "at": "2026-07-07T14:58:57.574Z", + "elapsedMs": 4036, + "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": 25, + "programExecutionSourceMode": "linuxcnc-task-motion-hal-wasm", + "programExecutionSampleIndex": 339, + "programRuntimeFeedback": { + "apiName": "web-rtcp-5axis-program-runtime-feedback", + "sourceMode": "linuxcnc-task-motion-hal-wasm", + "semanticBoundary": "linuxcnc_task_motion_hal_wasm_simulation_runtime", + "sampleIndex": 339, + "motionIndex": 8, + "line": 25, + "motionProgramLine": 25, + "halProgramLine": 25, + "activeLineSource": "motion-status", + "activeLineHalSynced": true, + "type": "TASK_MOTION", + "paused": false, + "timeSeconds": 0, + "axisPose": { + "x": -18.1176, + "y": 18.1176, + "z": 10, + "a": 0, + "b": 0, + "c": 0 + }, + "currentVelocityMmPerMin": 1996.5359999999998, + "requestedVelocityMmPerMin": 1996.5359999999998, + "distanceToGo": 0, + "dtg": { + "x": 0, + "y": 0, + "z": 0 + }, + "queueDepth": 0, + "activeDepth": 0, + "cycle": 19300, + "taskCycle": 1930, + "halChangedPinCount": 0, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "statement": "g0 x-20 y+20 z#", + "motionType": "rapid", + "activeKinematics": "identity", + "tcp": { + "x": -18.1176, + "y": 18.1176, + "z": 10 + }, + "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": -18.1176, + "y": 18.1176, + "z": 10, + "a": 0, + "b": 0, + "c": 0 + }, + "dro": { + "x": -18.1176, + "y": 18.1176, + "z": 10, + "a": 0, + "b": 0, + "c": 0, + "tcpX": -18.1176, + "tcpY": 18.1176, + "tcpZ": 10, + "dtgX": 0, + "dtgY": 0, + "dtgZ": 0 + }, + "programUiExecution": { + "apiName": "web-rtcp-5axis-ui-gcode-live-execution", + "status": "running", + "source": "programAxisPreviewPath.samples", + "samplePeriodMs": 50, + "sampleIndex": 339, + "sampleCount": 1300, + "executedSampleCount": 340, + "timeMs": 16950, + "activeProgram": "configs/sim/axis/vismach/5axis/table-rotary-tilting/demos/xyzbc_switchkins.ngc", + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 25, + "statement": "g0 x-20 y+20 z#", + "operation": "rapid-to-quadrant-center", + "executionIndex": 19, + "gcodeStepIndex": 45, + "segmentIndex": 8, + "motionType": "rapid", + "activeKinematics": "identity", + "joint": { + "x": -18.1176, + "y": 18.1176, + "z": 10, + "a": 0, + "b": 0, + "c": 0 + }, + "tcp": { + "x": -18.1176, + "y": 18.1176, + "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": 1996.5359999999998, + "operatorMessage": "task/HAL status tick 228", + "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.018, + "y": 0.018, + "z": 0.01 + }, + "canvasVismachPins": null, + "programPaneDataset": { + "region": "program", + "liveSourceFile": "xyzbc_switchkins_sub.ngc", + "liveSourceLine": "25", + "liveSampleIndex": "339", + "liveExecutedSamples": "340", + "gcodeExecutionStatus": "ok", + "gcodeExecutionStepCount": "128", + "gcodeMotionStepCount": "29", + "gcodeParameterStepCount": "41", + "gcodeCallDepth": "1" + }, + "processMonitorDataset": { + "linuxcncProcessMonitor": "", + "sourceMode": "linuxcnc-task-motion-hal-wasm", + "taskHalReady": "true", + "activeLine": "25", + "liveSourceFile": "xyzbc_switchkins_sub.ngc", + "liveSourceLine": "25", + "liveSampleIndex": "339" + } + }, + "after": { + "runState": "paused", + "taskState": "on", + "powerOn": true, + "estopActive": false, + "allHomed": true, + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "motionPaused": true, + "activeLine": 13, + "sampleIndex": 344, + "programExecutionSourceMode": "linuxcnc-task-motion-hal-wasm", + "programUiExecution": { + "apiName": "web-rtcp-5axis-ui-gcode-live-execution", + "status": "paused", + "source": "programAxisPreviewPath.samples", + "samplePeriodMs": 50, + "sampleIndex": 344, + "sampleCount": 1300, + "executedSampleCount": 345, + "timeMs": 17200, + "activeProgram": "configs/sim/axis/vismach/5axis/table-rotary-tilting/demos/xyzbc_switchkins.ngc", + "sourceFile": "helix_bc.ngc", + "line": 13, + "statement": "g0 x[#<_x> - #]", + "operation": "rapid-radius-adjust", + "executionIndex": 22, + "gcodeStepIndex": 58, + "segmentIndex": 9, + "motionType": "rapid", + "activeKinematics": "identity", + "joint": { + "x": -25.6667, + "y": 20, + "z": 10, + "a": 0, + "b": 0, + "c": 0 + }, + "tcp": { + "x": -25.6667, + "y": 20, + "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 2" + } + }, + { + "label": "第二次暂停保持 5 秒", + "at": "2026-07-07T14:59:05.400Z", + "durationMs": 7826, + "state": { + "runState": "paused", + "taskState": "on", + "powerOn": true, + "estopActive": false, + "allHomed": true, + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "motionPaused": true, + "activeLine": 13, + "sampleIndex": 344, + "programExecutionSourceMode": "linuxcnc-task-motion-hal-wasm", + "programUiExecution": { + "apiName": "web-rtcp-5axis-ui-gcode-live-execution", + "status": "paused", + "source": "programAxisPreviewPath.samples", + "samplePeriodMs": 50, + "sampleIndex": 344, + "sampleCount": 1300, + "executedSampleCount": 345, + "timeMs": 17200, + "activeProgram": "configs/sim/axis/vismach/5axis/table-rotary-tilting/demos/xyzbc_switchkins.ngc", + "sourceFile": "helix_bc.ngc", + "line": 13, + "statement": "g0 x[#<_x> - #]", + "operation": "rapid-radius-adjust", + "executionIndex": 22, + "gcodeStepIndex": 58, + "segmentIndex": 9, + "motionType": "rapid", + "activeKinematics": "identity", + "joint": { + "x": -25.6667, + "y": 20, + "z": 10, + "a": 0, + "b": 0, + "c": 0 + }, + "tcp": { + "x": -25.6667, + "y": 20, + "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 166" + }, + "frozenPosition": { + "axisPose": { + "x": -25.6667, + "y": 20, + "z": 10, + "a": 0, + "b": 0, + "c": 0 + }, + "dro": { + "x": -25.6667, + "y": 20, + "z": 10, + "a": 0, + "b": 0, + "c": 0, + "tcpX": -25.6667, + "tcpY": 20, + "tcpZ": 10, + "dtgX": 0, + "dtgY": 0, + "dtgZ": 0 + }, + "canvasToolhead": { + "x": -0.026, + "y": 0.02, + "z": 0.01 + }, + "canvasVismachPins": null + }, + "movedDuringHold": null + }, + { + "label": "第二次继续执行", + "selector": "[data-tool-id=\"tbtn_pause\"]", + "at": "2026-07-07T14:59:09.863Z", + "elapsedMs": 4287, + "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": 13, + "programExecutionSourceMode": "linuxcnc-task-motion-hal-wasm", + "programExecutionSampleIndex": 344, + "programRuntimeFeedback": { + "apiName": "web-rtcp-5axis-program-runtime-feedback", + "sourceMode": "linuxcnc-task-motion-hal-wasm", + "semanticBoundary": "linuxcnc_task_motion_hal_wasm_simulation_runtime", + "sampleIndex": 344, + "motionIndex": 9, + "line": 13, + "motionProgramLine": 13, + "halProgramLine": 13, + "activeLineSource": "motion-status", + "activeLineHalSynced": true, + "type": "TASK_MOTION", + "paused": true, + "timeSeconds": 0, + "axisPose": { + "x": -25.6667, + "y": 20, + "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": 22040, + "taskCycle": 2204, + "halChangedPinCount": 0, + "tcp": { + "x": -25.6667, + "y": 20, + "z": 10 + } + }, + "axisPose": { + "x": -25.6667, + "y": 20, + "z": 10, + "a": 0, + "b": 0, + "c": 0 + }, + "dro": { + "x": -25.6667, + "y": 20, + "z": 10, + "a": 0, + "b": 0, + "c": 0, + "tcpX": -25.6667, + "tcpY": 20, + "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": 344, + "sampleCount": 1300, + "executedSampleCount": 345, + "timeMs": 17200, + "activeProgram": "configs/sim/axis/vismach/5axis/table-rotary-tilting/demos/xyzbc_switchkins.ngc", + "sourceFile": "helix_bc.ngc", + "line": 13, + "statement": "g0 x[#<_x> - #]", + "operation": "rapid-radius-adjust", + "executionIndex": 22, + "gcodeStepIndex": 58, + "segmentIndex": 9, + "motionType": "rapid", + "activeKinematics": "identity", + "joint": { + "x": -25.6667, + "y": 20, + "z": 10, + "a": 0, + "b": 0, + "c": 0 + }, + "tcp": { + "x": -25.6667, + "y": 20, + "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 248", + "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.026, + "y": 0.02, + "z": 0.01 + }, + "canvasVismachPins": null, + "programPaneDataset": { + "region": "program", + "liveSourceFile": "helix_bc.ngc", + "liveSourceLine": "13", + "liveSampleIndex": "344", + "liveExecutedSamples": "345", + "gcodeExecutionStatus": "ok", + "gcodeExecutionStepCount": "128", + "gcodeMotionStepCount": "29", + "gcodeParameterStepCount": "41", + "gcodeCallDepth": "2" + }, + "processMonitorDataset": { + "linuxcncProcessMonitor": "", + "sourceMode": "linuxcnc-task-motion-hal-wasm", + "taskHalReady": "true", + "activeLine": "13", + "liveSourceFile": "helix_bc.ngc", + "liveSourceLine": "13", + "liveSampleIndex": "344" + } + }, + "after": { + "runState": "running", + "taskState": "on", + "powerOn": true, + "estopActive": false, + "allHomed": true, + "mode": "auto", + "interpState": "reading", + "taskPaused": false, + "motionPaused": false, + "activeLine": 16, + "sampleIndex": 348, + "programExecutionSourceMode": "linuxcnc-task-motion-hal-wasm", + "programUiExecution": { + "apiName": "web-rtcp-5axis-ui-gcode-live-execution", + "status": "running", + "source": "programAxisPreviewPath.samples", + "samplePeriodMs": 50, + "sampleIndex": 348, + "sampleCount": 1300, + "executedSampleCount": 349, + "timeMs": 17400, + "activeProgram": "configs/sim/axis/vismach/5axis/table-rotary-tilting/demos/xyzbc_switchkins.ngc", + "sourceFile": "helix_bc.ngc", + "line": 16, + "statement": "g0b#c#", + "operation": "rapid-bc-orient", + "executionIndex": 25, + "gcodeStepIndex": 61, + "segmentIndex": 10, + "motionType": "rapid", + "activeKinematics": "tcp-xyzbc", + "joint": { + "x": -30, + "y": 20, + "z": 10, + "a": 0, + "b": 0.551724, + "c": 1.24138 + }, + "tcp": { + "x": -30, + "y": 20, + "z": 10 + }, + "toolAxis": { + "i": 0.012032048873037686, + "j": 0.0003259400065658286, + "k": 0.9999275591576766 + }, + "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": 203.7696, + "operatorMessage": "task/HAL status tick 3" + } + }, + { + "label": "第二次继续执行 10 秒", + "at": "2026-07-07T14:59:22.415Z", + "durationMs": 12552, + "state": { + "runState": "running", + "taskState": "on", + "powerOn": true, + "estopActive": false, + "allHomed": true, + "mode": "auto", + "interpState": "reading", + "taskPaused": false, + "motionPaused": false, + "activeLine": 17, + "sampleIndex": 513, + "programExecutionSourceMode": "linuxcnc-task-motion-hal-wasm", + "programUiExecution": { + "apiName": "web-rtcp-5axis-ui-gcode-live-execution", + "status": "running", + "source": "programAxisPreviewPath.samples", + "samplePeriodMs": 50, + "sampleIndex": 513, + "sampleCount": 1300, + "executedSampleCount": 514, + "timeMs": 25650, + "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": -23.5581, + "y": 29.3397, + "z": 6.98678, + "a": 0, + "b": 20, + "c": 45 + }, + "tcp": { + "x": -23.5581, + "y": 29.3397, + "z": 6.98678 + }, + "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 168" + }, + "frozenPosition": null, + "movedDuringHold": null + } + ], + "assertions": [ + { + "label": "WebGL/canvas preview rendered", + "passed": true, + "checkedAt": "2026-07-07T14:58:13.287Z", + "result": { + "ok": true, + "width": 383, + "height": 572, + "dataUrlLength": 48954 + } + }, + { + "label": "解除 ESTOP", + "passed": true, + "checkedAt": "2026-07-07T14:58:15.629Z", + "state": { + "runState": "idle", + "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": "estop reset; machine off" + } + }, + { + "label": "上电", + "passed": true, + "checkedAt": "2026-07-07T14:58:16.596Z", + "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-07T14:58:17.477Z", + "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": 3600, + "operatorMessage": "task/HAL machine homed" + } + }, + { + "label": "Run", + "passed": true, + "checkedAt": "2026-07-07T14:58:21.116Z", + "state": { + "runState": "running", + "taskState": "on", + "powerOn": true, + "estopActive": false, + "allHomed": true, + "mode": "auto", + "interpState": "reading", + "taskPaused": false, + "motionPaused": false, + "activeLine": 16, + "sampleIndex": 0, + "programExecutionSourceMode": "linuxcnc-machine-file-remap-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, + "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": 30, + "operatorMessage": "LinuxCNC interpreter motion events 29" + } + }, + { + "label": "Run 后稳定运行 3000ms", + "passed": true, + "checkedAt": "2026-07-07T14:58:24.777Z", + "state": { + "runState": "running", + "taskState": "on", + "powerOn": true, + "estopActive": false, + "allHomed": true, + "mode": "auto", + "interpState": "reading", + "taskPaused": false, + "motionPaused": false, + "activeLine": 16, + "sampleIndex": 46, + "programExecutionSourceMode": "linuxcnc-task-motion-hal-wasm", + "programUiExecution": { + "apiName": "web-rtcp-5axis-ui-gcode-live-execution", + "status": "running", + "source": "programAxisPreviewPath.samples", + "samplePeriodMs": 50, + "sampleIndex": 46, + "sampleCount": 1300, + "executedSampleCount": 47, + "timeMs": 2300, + "activeProgram": "configs/sim/axis/vismach/5axis/table-rotary-tilting/demos/xyzbc_switchkins.ngc", + "sourceFile": "helix_bc.ngc", + "line": 16, + "statement": "g0b#c#", + "operation": "rapid-bc-orient", + "executionIndex": 10, + "gcodeStepIndex": 34, + "segmentIndex": 3, + "motionType": "rapid", + "activeKinematics": "tcp-xyzbc", + "joint": { + "x": 10, + "y": 20, + "z": 10, + "a": 0, + "b": 15.1724, + "c": 34.1379 + }, + "tcp": { + "x": 10, + "y": 20, + "z": 10 + }, + "toolAxis": { + "i": 0.2166265071126894, + "j": 0.14687641623482095, + "k": 0.9651426188756621 + }, + "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": 203.7696, + "operatorMessage": "task/HAL status tick 45" + } + }, + { + "label": "第一次暂停", + "passed": true, + "checkedAt": "2026-07-07T14:58:28.127Z", + "state": { + "runState": "paused", + "taskState": "on", + "powerOn": true, + "estopActive": false, + "allHomed": true, + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "motionPaused": true, + "activeLine": 17, + "sampleIndex": 111, + "programExecutionSourceMode": "linuxcnc-task-motion-hal-wasm", + "programUiExecution": { + "apiName": "web-rtcp-5axis-ui-gcode-live-execution", + "status": "paused", + "source": "programAxisPreviewPath.samples", + "samplePeriodMs": 50, + "sampleIndex": 111, + "sampleCount": 1300, + "executedSampleCount": 112, + "timeMs": 5550, + "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": 18.9639, + "y": 29.9462, + "z": 8.72247, + "a": 0, + "b": 20, + "c": 45 + }, + "tcp": { + "x": -1.3556551129202354, + "y": 9.62664488707977, + "z": -70.22956430581124 + }, + "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-07T14:58:35.528Z", + "state": { + "runState": "paused", + "taskState": "on", + "powerOn": true, + "estopActive": false, + "allHomed": true, + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "motionPaused": true, + "activeLine": 17, + "sampleIndex": 111, + "programExecutionSourceMode": "linuxcnc-task-motion-hal-wasm", + "programUiExecution": { + "apiName": "web-rtcp-5axis-ui-gcode-live-execution", + "status": "paused", + "source": "programAxisPreviewPath.samples", + "samplePeriodMs": 50, + "sampleIndex": 111, + "sampleCount": 1300, + "executedSampleCount": 112, + "timeMs": 5550, + "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": 18.9639, + "y": 29.9462, + "z": 8.72247, + "a": 0, + "b": 20, + "c": 45 + }, + "tcp": { + "x": -1.3556551129202354, + "y": 9.62664488707977, + "z": -70.22956430581124 + }, + "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 143" + } + }, + { + "label": "第一次继续执行", + "passed": true, + "checkedAt": "2026-07-07T14:58:40.248Z", + "state": { + "runState": "running", + "taskState": "on", + "powerOn": true, + "estopActive": false, + "allHomed": true, + "mode": "auto", + "interpState": "reading", + "taskPaused": false, + "motionPaused": false, + "activeLine": 17, + "sampleIndex": 114, + "programExecutionSourceMode": "linuxcnc-task-motion-hal-wasm", + "programUiExecution": { + "apiName": "web-rtcp-5axis-ui-gcode-live-execution", + "status": "running", + "source": "programAxisPreviewPath.samples", + "samplePeriodMs": 50, + "sampleIndex": 114, + "sampleCount": 1300, + "executedSampleCount": 115, + "timeMs": 5700, + "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": 16.2371, + "y": 29.2561, + "z": 8.64758, + "a": 0, + "b": 20, + "c": 45 + }, + "tcp": { + "x": 16.2371, + "y": 29.2561, + "z": 8.64758 + }, + "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 3" + } + }, + { + "label": "第一次继续执行 10 秒", + "passed": true, + "checkedAt": "2026-07-07T14:58:53.371Z", + "state": { + "runState": "running", + "taskState": "on", + "powerOn": true, + "estopActive": false, + "allHomed": true, + "mode": "auto", + "interpState": "reading", + "taskPaused": false, + "motionPaused": false, + "activeLine": 19, + "sampleIndex": 282, + "programExecutionSourceMode": "linuxcnc-task-motion-hal-wasm", + "programUiExecution": { + "apiName": "web-rtcp-5axis-ui-gcode-live-execution", + "status": "running", + "source": "programAxisPreviewPath.samples", + "samplePeriodMs": 50, + "sampleIndex": 282, + "sampleCount": 1300, + "executedSampleCount": 283, + "timeMs": 14100, + "activeProgram": "configs/sim/axis/vismach/5axis/table-rotary-tilting/demos/xyzbc_switchkins.ngc", + "sourceFile": "helix_bc.ngc", + "line": 19, + "statement": "g0 x0 y0 z# b0 c0", + "operation": "rapid-return-to-start", + "executionIndex": 13, + "gcodeStepIndex": 37, + "segmentIndex": 5, + "motionType": "rapid", + "activeKinematics": "identity", + "joint": { + "x": 9.25, + "y": 18.5, + "z": 5.375, + "a": 0, + "b": 18.5, + "c": 41.625 + }, + "tcp": { + "x": 9.25, + "y": 18.5, + "z": 5.375 + }, + "toolAxis": { + "i": 0.2381709335498739, + "j": 0.21586555136557564, + "k": 0.9469301294951057 + }, + "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": 859.2299999999999, + "operatorMessage": "task/HAL status tick 171" + } + }, + { + "label": "第二次暂停", + "passed": true, + "checkedAt": "2026-07-07T14:58:57.574Z", + "state": { + "runState": "paused", + "taskState": "on", + "powerOn": true, + "estopActive": false, + "allHomed": true, + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "motionPaused": true, + "activeLine": 13, + "sampleIndex": 344, + "programExecutionSourceMode": "linuxcnc-task-motion-hal-wasm", + "programUiExecution": { + "apiName": "web-rtcp-5axis-ui-gcode-live-execution", + "status": "paused", + "source": "programAxisPreviewPath.samples", + "samplePeriodMs": 50, + "sampleIndex": 344, + "sampleCount": 1300, + "executedSampleCount": 345, + "timeMs": 17200, + "activeProgram": "configs/sim/axis/vismach/5axis/table-rotary-tilting/demos/xyzbc_switchkins.ngc", + "sourceFile": "helix_bc.ngc", + "line": 13, + "statement": "g0 x[#<_x> - #]", + "operation": "rapid-radius-adjust", + "executionIndex": 22, + "gcodeStepIndex": 58, + "segmentIndex": 9, + "motionType": "rapid", + "activeKinematics": "identity", + "joint": { + "x": -25.6667, + "y": 20, + "z": 10, + "a": 0, + "b": 0, + "c": 0 + }, + "tcp": { + "x": -25.6667, + "y": 20, + "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 2" + } + }, + { + "label": "第二次暂停保持 5 秒", + "passed": true, + "checkedAt": "2026-07-07T14:59:05.400Z", + "state": { + "runState": "paused", + "taskState": "on", + "powerOn": true, + "estopActive": false, + "allHomed": true, + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "motionPaused": true, + "activeLine": 13, + "sampleIndex": 344, + "programExecutionSourceMode": "linuxcnc-task-motion-hal-wasm", + "programUiExecution": { + "apiName": "web-rtcp-5axis-ui-gcode-live-execution", + "status": "paused", + "source": "programAxisPreviewPath.samples", + "samplePeriodMs": 50, + "sampleIndex": 344, + "sampleCount": 1300, + "executedSampleCount": 345, + "timeMs": 17200, + "activeProgram": "configs/sim/axis/vismach/5axis/table-rotary-tilting/demos/xyzbc_switchkins.ngc", + "sourceFile": "helix_bc.ngc", + "line": 13, + "statement": "g0 x[#<_x> - #]", + "operation": "rapid-radius-adjust", + "executionIndex": 22, + "gcodeStepIndex": 58, + "segmentIndex": 9, + "motionType": "rapid", + "activeKinematics": "identity", + "joint": { + "x": -25.6667, + "y": 20, + "z": 10, + "a": 0, + "b": 0, + "c": 0 + }, + "tcp": { + "x": -25.6667, + "y": 20, + "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 166" + } + }, + { + "label": "第二次继续执行", + "passed": true, + "checkedAt": "2026-07-07T14:59:09.863Z", + "state": { + "runState": "running", + "taskState": "on", + "powerOn": true, + "estopActive": false, + "allHomed": true, + "mode": "auto", + "interpState": "reading", + "taskPaused": false, + "motionPaused": false, + "activeLine": 16, + "sampleIndex": 348, + "programExecutionSourceMode": "linuxcnc-task-motion-hal-wasm", + "programUiExecution": { + "apiName": "web-rtcp-5axis-ui-gcode-live-execution", + "status": "running", + "source": "programAxisPreviewPath.samples", + "samplePeriodMs": 50, + "sampleIndex": 348, + "sampleCount": 1300, + "executedSampleCount": 349, + "timeMs": 17400, + "activeProgram": "configs/sim/axis/vismach/5axis/table-rotary-tilting/demos/xyzbc_switchkins.ngc", + "sourceFile": "helix_bc.ngc", + "line": 16, + "statement": "g0b#c#", + "operation": "rapid-bc-orient", + "executionIndex": 25, + "gcodeStepIndex": 61, + "segmentIndex": 10, + "motionType": "rapid", + "activeKinematics": "tcp-xyzbc", + "joint": { + "x": -30, + "y": 20, + "z": 10, + "a": 0, + "b": 0.551724, + "c": 1.24138 + }, + "tcp": { + "x": -30, + "y": 20, + "z": 10 + }, + "toolAxis": { + "i": 0.012032048873037686, + "j": 0.0003259400065658286, + "k": 0.9999275591576766 + }, + "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": 203.7696, + "operatorMessage": "task/HAL status tick 3" + } + }, + { + "label": "第二次继续执行 10 秒", + "passed": true, + "checkedAt": "2026-07-07T14:59:22.415Z", + "state": { + "runState": "running", + "taskState": "on", + "powerOn": true, + "estopActive": false, + "allHomed": true, + "mode": "auto", + "interpState": "reading", + "taskPaused": false, + "motionPaused": false, + "activeLine": 17, + "sampleIndex": 513, + "programExecutionSourceMode": "linuxcnc-task-motion-hal-wasm", + "programUiExecution": { + "apiName": "web-rtcp-5axis-ui-gcode-live-execution", + "status": "running", + "source": "programAxisPreviewPath.samples", + "samplePeriodMs": 50, + "sampleIndex": 513, + "sampleCount": 1300, + "executedSampleCount": 514, + "timeMs": 25650, + "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": -23.5581, + "y": 29.3397, + "z": 6.98678, + "a": 0, + "b": 20, + "c": 45 + }, + "tcp": { + "x": -23.5581, + "y": 29.3397, + "z": 6.98678 + }, + "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 168" + } + } + ], + "capturedFrameCount": 463, + "firstFrame": { + "index": 0, + "elapsedMs": 57, + "file": "frame-00000-t000057ms-estopped.png", + "runState": "estopped", + "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": 462, + "elapsedMs": 163298, + "file": "frame-00462-t163298ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + "frames": [ + { + "index": 0, + "elapsedMs": 57, + "file": "frame-00000-t000057ms-estopped.png", + "runState": "estopped", + "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": 241, + "file": "frame-00001-t000241ms-estopped.png", + "runState": "estopped", + "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": 2, + "elapsedMs": 1054, + "file": "frame-00002-t001054ms-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": 3, + "elapsedMs": 1225, + "file": "frame-00003-t001225ms-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": 2074, + "file": "frame-00004-t002074ms-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": 2902, + "file": "frame-00005-t002902ms-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": 3600 + }, + { + "index": 6, + "elapsedMs": 3048, + "file": "frame-00006-t003048ms-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": 3600 + }, + { + "index": 7, + "elapsedMs": 3342, + "file": "frame-00007-t003342ms-running.png", + "runState": "running", + "taskState": "on", + "mode": "auto", + "interpState": "reading", + "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": 8, + "elapsedMs": 9990, + "file": "frame-00008-t009990ms-running.png", + "runState": "running", + "taskState": "on", + "mode": "auto", + "interpState": "reading", + "taskPaused": false, + "motionPaused": false, + "activeLine": 17, + "sampleIndex": 101, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 996.516 + }, + { + "index": 9, + "elapsedMs": 10356, + "file": "frame-00009-t010356ms-running.png", + "runState": "running", + "taskState": "on", + "mode": "auto", + "interpState": "reading", + "taskPaused": false, + "motionPaused": false, + "activeLine": 17, + "sampleIndex": 109, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 996.516 + }, + { + "index": 10, + "elapsedMs": 13568, + "file": "frame-00010-t013568ms-paused.png", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "motionPaused": true, + "activeLine": 17, + "sampleIndex": 111, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 0 + }, + { + "index": 11, + "elapsedMs": 20622, + "file": "frame-00011-t020622ms-paused.png", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "motionPaused": true, + "activeLine": 17, + "sampleIndex": 111, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 0 + }, + { + "index": 12, + "elapsedMs": 21108, + "file": "frame-00012-t021108ms-running.png", + "runState": "running", + "taskState": "on", + "mode": "auto", + "interpState": "reading", + "taskPaused": false, + "motionPaused": false, + "activeLine": 17, + "sampleIndex": 111, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 0 + }, + { + "index": 13, + "elapsedMs": 29693, + "file": "frame-00013-t029693ms-running.png", + "runState": "running", + "taskState": "on", + "mode": "auto", + "interpState": "reading", + "taskPaused": false, + "motionPaused": false, + "activeLine": 17, + "sampleIndex": 224, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 996.516 + }, + { + "index": 14, + "elapsedMs": 38559, + "file": "frame-00014-t038559ms-running.png", + "runState": "running", + "taskState": "on", + "mode": "auto", + "interpState": "reading", + "taskPaused": false, + "motionPaused": false, + "activeLine": 25, + "sampleIndex": 337, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 25, + "statement": "g0 x-20 y+20 z#", + "currentVelocity": 1996.5359999999998 + }, + { + "index": 15, + "elapsedMs": 39042, + "file": "frame-00015-t039042ms-paused.png", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "motionPaused": true, + "activeLine": 13, + "sampleIndex": 344, + "sourceFile": "helix_bc.ngc", + "line": 13, + "statement": "g0 x[#<_x> - #]", + "currentVelocity": 0 + }, + { + "index": 16, + "elapsedMs": 46603, + "file": "frame-00016-t046603ms-paused.png", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "motionPaused": true, + "activeLine": 13, + "sampleIndex": 344, + "sourceFile": "helix_bc.ngc", + "line": 13, + "statement": "g0 x[#<_x> - #]", + "currentVelocity": 0 + }, + { + "index": 17, + "elapsedMs": 50513, + "file": "frame-00017-t050513ms-paused.png", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "motionPaused": true, + "activeLine": 13, + "sampleIndex": 344, + "sourceFile": "helix_bc.ngc", + "line": 13, + "statement": "g0 x[#<_x> - #]", + "currentVelocity": 0 + }, + { + "index": 18, + "elapsedMs": 50914, + "file": "frame-00018-t050914ms-paused.png", + "runState": "paused", + "taskState": "on", + "mode": "auto", + "interpState": "paused", + "taskPaused": true, + "motionPaused": true, + "activeLine": 13, + "sampleIndex": 344, + "sourceFile": "helix_bc.ngc", + "line": 13, + "statement": "g0 x[#<_x> - #]", + "currentVelocity": 0 + }, + { + "index": 19, + "elapsedMs": 51181, + "file": "frame-00019-t051181ms-running.png", + "runState": "running", + "taskState": "on", + "mode": "auto", + "interpState": "reading", + "taskPaused": false, + "motionPaused": false, + "activeLine": 13, + "sampleIndex": 345, + "sourceFile": "helix_bc.ngc", + "line": 13, + "statement": "g0 x[#<_x> - #]", + "currentVelocity": 1999.998 + }, + { + "index": 20, + "elapsedMs": 63391, + "file": "frame-00020-t063391ms-running.png", + "runState": "running", + "taskState": "on", + "mode": "auto", + "interpState": "reading", + "taskPaused": false, + "motionPaused": false, + "activeLine": 17, + "sampleIndex": 511, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 996.516 + }, + { + "index": 21, + "elapsedMs": 67862, + "file": "frame-00021-t067862ms-running.png", + "runState": "running", + "taskState": "on", + "mode": "auto", + "interpState": "reading", + "taskPaused": false, + "motionPaused": false, + "activeLine": 17, + "sampleIndex": 572, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 996.516 + }, + { + "index": 22, + "elapsedMs": 68265, + "file": "frame-00022-t068265ms-running.png", + "runState": "running", + "taskState": "on", + "mode": "auto", + "interpState": "reading", + "taskPaused": false, + "motionPaused": false, + "activeLine": 17, + "sampleIndex": 578, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 996.516 + }, + { + "index": 23, + "elapsedMs": 68688, + "file": "frame-00023-t068688ms-running.png", + "runState": "running", + "taskState": "on", + "mode": "auto", + "interpState": "reading", + "taskPaused": false, + "motionPaused": false, + "activeLine": 17, + "sampleIndex": 585, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 996.516 + }, + { + "index": 24, + "elapsedMs": 69051, + "file": "frame-00024-t069051ms-running.png", + "runState": "running", + "taskState": "on", + "mode": "auto", + "interpState": "reading", + "taskPaused": false, + "motionPaused": false, + "activeLine": 17, + "sampleIndex": 591, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 996.516 + }, + { + "index": 25, + "elapsedMs": 69419, + "file": "frame-00025-t069419ms-running.png", + "runState": "running", + "taskState": "on", + "mode": "auto", + "interpState": "reading", + "taskPaused": false, + "motionPaused": false, + "activeLine": 17, + "sampleIndex": 597, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 996.516 + }, + { + "index": 26, + "elapsedMs": 69736, + "file": "frame-00026-t069736ms-running.png", + "runState": "running", + "taskState": "on", + "mode": "auto", + "interpState": "reading", + "taskPaused": false, + "motionPaused": false, + "activeLine": 19, + "sampleIndex": 603, + "sourceFile": "helix_bc.ngc", + "line": 19, + "statement": "g0 x0 y0 z# b0 c0", + "currentVelocity": 996.516 + }, + { + "index": 27, + "elapsedMs": 70091, + "file": "frame-00027-t070091ms-running.png", + "runState": "running", + "taskState": "on", + "mode": "auto", + "interpState": "reading", + "taskPaused": false, + "motionPaused": false, + "activeLine": 19, + "sampleIndex": 609, + "sourceFile": "helix_bc.ngc", + "line": 19, + "statement": "g0 x0 y0 z# b0 c0", + "currentVelocity": 1248.018 + }, + { + "index": 28, + "elapsedMs": 70438, + "file": "frame-00028-t070438ms-running.png", + "runState": "running", + "taskState": "on", + "mode": "auto", + "interpState": "reading", + "taskPaused": false, + "motionPaused": false, + "activeLine": 19, + "sampleIndex": 614, + "sourceFile": "helix_bc.ngc", + "line": 19, + "statement": "g0 x0 y0 z# b0 c0", + "currentVelocity": 1248.018 + }, + { + "index": 29, + "elapsedMs": 70794, + "file": "frame-00029-t070794ms-running.png", + "runState": "running", + "taskState": "on", + "mode": "auto", + "interpState": "reading", + "taskPaused": false, + "motionPaused": false, + "activeLine": 19, + "sampleIndex": 620, + "sourceFile": "helix_bc.ngc", + "line": 19, + "statement": "g0 x0 y0 z# b0 c0", + "currentVelocity": 1248.018 + }, + { + "index": 30, + "elapsedMs": 71124, + "file": "frame-00030-t071124ms-running.png", + "runState": "running", + "taskState": "on", + "mode": "auto", + "interpState": "reading", + "taskPaused": false, + "motionPaused": false, + "activeLine": 19, + "sampleIndex": 626, + "sourceFile": "helix_bc.ngc", + "line": 19, + "statement": "g0 x0 y0 z# b0 c0", + "currentVelocity": 1248.018 + }, + { + "index": 31, + "elapsedMs": 71417, + "file": "frame-00031-t071417ms-running.png", + "runState": "running", + "taskState": "on", + "mode": "auto", + "interpState": "reading", + "taskPaused": false, + "motionPaused": false, + "activeLine": 19, + "sampleIndex": 632, + "sourceFile": "helix_bc.ngc", + "line": 19, + "statement": "g0 x0 y0 z# b0 c0", + "currentVelocity": 1248.018 + }, + { + "index": 32, + "elapsedMs": 71777, + "file": "frame-00032-t071777ms-running.png", + "runState": "running", + "taskState": "on", + "mode": "auto", + "interpState": "reading", + "taskPaused": false, + "motionPaused": false, + "activeLine": 20, + "sampleIndex": 638, + "sourceFile": "helix_bc.ngc", + "line": 20, + "statement": "g0 x[#<_x> + #]", + "currentVelocity": 1248.018 + }, + { + "index": 33, + "elapsedMs": 72121, + "file": "frame-00033-t072121ms-running.png", + "runState": "running", + "taskState": "on", + "mode": "auto", + "interpState": "reading", + "taskPaused": false, + "motionPaused": false, + "activeLine": 30, + "sampleIndex": 644, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 30, + "statement": "g53 g0 x0y0 z# b0 c0 ; quadrant III", + "currentVelocity": 1999.998 + }, + { + "index": 34, + "elapsedMs": 72422, + "file": "frame-00034-t072422ms-running.png", + "runState": "running", + "taskState": "on", + "mode": "auto", + "interpState": "reading", + "taskPaused": false, + "motionPaused": false, + "activeLine": 30, + "sampleIndex": 649, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 30, + "statement": "g53 g0 x0y0 z# b0 c0 ; quadrant III", + "currentVelocity": 1999.998 + }, + { + "index": 35, + "elapsedMs": 72768, + "file": "frame-00035-t072768ms-running.png", + "runState": "running", + "taskState": "on", + "mode": "auto", + "interpState": "reading", + "taskPaused": false, + "motionPaused": false, + "activeLine": 32, + "sampleIndex": 656, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 32, + "statement": "g0 x-20 y-20 z#", + "currentVelocity": 1996.5359999999998 + }, + { + "index": 36, + "elapsedMs": 73127, + "file": "frame-00036-t073127ms-running.png", + "runState": "running", + "taskState": "on", + "mode": "auto", + "interpState": "reading", + "taskPaused": false, + "motionPaused": false, + "activeLine": 32, + "sampleIndex": 662, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 32, + "statement": "g0 x-20 y-20 z#", + "currentVelocity": 1996.5359999999998 + }, + { + "index": 37, + "elapsedMs": 73494, + "file": "frame-00037-t073494ms-running.png", + "runState": "running", + "taskState": "on", + "mode": "auto", + "interpState": "reading", + "taskPaused": false, + "motionPaused": false, + "activeLine": 13, + "sampleIndex": 668, + "sourceFile": "helix_bc.ngc", + "line": 13, + "statement": "g0 x[#<_x> - #]", + "currentVelocity": 1999.998 + }, + { + "index": 38, + "elapsedMs": 73811, + "file": "frame-00038-t073811ms-running.png", + "runState": "running", + "taskState": "on", + "mode": "auto", + "interpState": "reading", + "taskPaused": false, + "motionPaused": false, + "activeLine": 16, + "sampleIndex": 675, + "sourceFile": "helix_bc.ngc", + "line": 16, + "statement": "g0b#c#", + "currentVelocity": 203.7696 + }, + { + "index": 39, + "elapsedMs": 74176, + "file": "frame-00039-t074176ms-running.png", + "runState": "running", + "taskState": "on", + "mode": "auto", + "interpState": "reading", + "taskPaused": false, + "motionPaused": false, + "activeLine": 16, + "sampleIndex": 681, + "sourceFile": "helix_bc.ngc", + "line": 16, + "statement": "g0b#c#", + "currentVelocity": 203.7696 + }, + { + "index": 40, + "elapsedMs": 74515, + "file": "frame-00040-t074515ms-running.png", + "runState": "running", + "taskState": "on", + "mode": "auto", + "interpState": "reading", + "taskPaused": false, + "motionPaused": false, + "activeLine": 16, + "sampleIndex": 687, + "sourceFile": "helix_bc.ngc", + "line": 16, + "statement": "g0b#c#", + "currentVelocity": 203.7696 + }, + { + "index": 41, + "elapsedMs": 74890, + "file": "frame-00041-t074890ms-running.png", + "runState": "running", + "taskState": "on", + "mode": "auto", + "interpState": "reading", + "taskPaused": false, + "motionPaused": false, + "activeLine": 16, + "sampleIndex": 693, + "sourceFile": "helix_bc.ngc", + "line": 16, + "statement": "g0b#c#", + "currentVelocity": 203.7696 + }, + { + "index": 42, + "elapsedMs": 75237, + "file": "frame-00042-t075237ms-running.png", + "runState": "running", + "taskState": "on", + "mode": "auto", + "interpState": "reading", + "taskPaused": false, + "motionPaused": false, + "activeLine": 16, + "sampleIndex": 700, + "sourceFile": "helix_bc.ngc", + "line": 16, + "statement": "g0b#c#", + "currentVelocity": 203.7696 + }, + { + "index": 43, + "elapsedMs": 75650, + "file": "frame-00043-t075650ms-running.png", + "runState": "running", + "taskState": "on", + "mode": "auto", + "interpState": "reading", + "taskPaused": false, + "motionPaused": false, + "activeLine": 17, + "sampleIndex": 706, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 996.516 + }, + { + "index": 44, + "elapsedMs": 76055, + "file": "frame-00044-t076055ms-running.png", + "runState": "running", + "taskState": "on", + "mode": "auto", + "interpState": "reading", + "taskPaused": false, + "motionPaused": false, + "activeLine": 17, + "sampleIndex": 712, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 996.516 + }, + { + "index": 45, + "elapsedMs": 76443, + "file": "frame-00045-t076443ms-running.png", + "runState": "running", + "taskState": "on", + "mode": "auto", + "interpState": "reading", + "taskPaused": false, + "motionPaused": false, + "activeLine": 17, + "sampleIndex": 720, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 996.516 + }, + { + "index": 46, + "elapsedMs": 76772, + "file": "frame-00046-t076772ms-running.png", + "runState": "running", + "taskState": "on", + "mode": "auto", + "interpState": "reading", + "taskPaused": false, + "motionPaused": false, + "activeLine": 17, + "sampleIndex": 726, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 996.516 + }, + { + "index": 47, + "elapsedMs": 77120, + "file": "frame-00047-t077120ms-running.png", + "runState": "running", + "taskState": "on", + "mode": "auto", + "interpState": "reading", + "taskPaused": false, + "motionPaused": false, + "activeLine": 17, + "sampleIndex": 732, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 996.516 + }, + { + "index": 48, + "elapsedMs": 77516, + "file": "frame-00048-t077516ms-running.png", + "runState": "running", + "taskState": "on", + "mode": "auto", + "interpState": "reading", + "taskPaused": false, + "motionPaused": false, + "activeLine": 17, + "sampleIndex": 739, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 996.516 + }, + { + "index": 49, + "elapsedMs": 77918, + "file": "frame-00049-t077918ms-running.png", + "runState": "running", + "taskState": "on", + "mode": "auto", + "interpState": "reading", + "taskPaused": false, + "motionPaused": false, + "activeLine": 17, + "sampleIndex": 747, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 996.516 + }, + { + "index": 50, + "elapsedMs": 78312, + "file": "frame-00050-t078312ms-running.png", + "runState": "running", + "taskState": "on", + "mode": "auto", + "interpState": "reading", + "taskPaused": false, + "motionPaused": false, + "activeLine": 17, + "sampleIndex": 754, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 996.516 + }, + { + "index": 51, + "elapsedMs": 78640, + "file": "frame-00051-t078640ms-running.png", + "runState": "running", + "taskState": "on", + "mode": "auto", + "interpState": "reading", + "taskPaused": false, + "motionPaused": false, + "activeLine": 17, + "sampleIndex": 759, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 996.516 + }, + { + "index": 52, + "elapsedMs": 78966, + "file": "frame-00052-t078966ms-running.png", + "runState": "running", + "taskState": "on", + "mode": "auto", + "interpState": "reading", + "taskPaused": false, + "motionPaused": false, + "activeLine": 17, + "sampleIndex": 765, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 996.516 + }, + { + "index": 53, + "elapsedMs": 79283, + "file": "frame-00053-t079283ms-running.png", + "runState": "running", + "taskState": "on", + "mode": "auto", + "interpState": "reading", + "taskPaused": false, + "motionPaused": false, + "activeLine": 17, + "sampleIndex": 771, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 996.516 + }, + { + "index": 54, + "elapsedMs": 79647, + "file": "frame-00054-t079647ms-running.png", + "runState": "running", + "taskState": "on", + "mode": "auto", + "interpState": "reading", + "taskPaused": false, + "motionPaused": false, + "activeLine": 17, + "sampleIndex": 777, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 996.516 + }, + { + "index": 55, + "elapsedMs": 79979, + "file": "frame-00055-t079979ms-running.png", + "runState": "running", + "taskState": "on", + "mode": "auto", + "interpState": "reading", + "taskPaused": false, + "motionPaused": false, + "activeLine": 17, + "sampleIndex": 784, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 996.516 + }, + { + "index": 56, + "elapsedMs": 80316, + "file": "frame-00056-t080316ms-running.png", + "runState": "running", + "taskState": "on", + "mode": "auto", + "interpState": "reading", + "taskPaused": false, + "motionPaused": false, + "activeLine": 17, + "sampleIndex": 789, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 996.516 + }, + { + "index": 57, + "elapsedMs": 80636, + "file": "frame-00057-t080636ms-running.png", + "runState": "running", + "taskState": "on", + "mode": "auto", + "interpState": "reading", + "taskPaused": false, + "motionPaused": false, + "activeLine": 17, + "sampleIndex": 795, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 996.516 + }, + { + "index": 58, + "elapsedMs": 80968, + "file": "frame-00058-t080968ms-running.png", + "runState": "running", + "taskState": "on", + "mode": "auto", + "interpState": "reading", + "taskPaused": false, + "motionPaused": false, + "activeLine": 17, + "sampleIndex": 801, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 996.516 + }, + { + "index": 59, + "elapsedMs": 81292, + "file": "frame-00059-t081292ms-running.png", + "runState": "running", + "taskState": "on", + "mode": "auto", + "interpState": "reading", + "taskPaused": false, + "motionPaused": false, + "activeLine": 17, + "sampleIndex": 807, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 996.516 + }, + { + "index": 60, + "elapsedMs": 81618, + "file": "frame-00060-t081618ms-running.png", + "runState": "running", + "taskState": "on", + "mode": "auto", + "interpState": "reading", + "taskPaused": false, + "motionPaused": false, + "activeLine": 17, + "sampleIndex": 814, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 996.516 + }, + { + "index": 61, + "elapsedMs": 81984, + "file": "frame-00061-t081984ms-running.png", + "runState": "running", + "taskState": "on", + "mode": "auto", + "interpState": "reading", + "taskPaused": false, + "motionPaused": false, + "activeLine": 17, + "sampleIndex": 820, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 996.516 + }, + { + "index": 62, + "elapsedMs": 82303, + "file": "frame-00062-t082303ms-running.png", + "runState": "running", + "taskState": "on", + "mode": "auto", + "interpState": "reading", + "taskPaused": false, + "motionPaused": false, + "activeLine": 17, + "sampleIndex": 826, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 996.516 + }, + { + "index": 63, + "elapsedMs": 82630, + "file": "frame-00063-t082630ms-running.png", + "runState": "running", + "taskState": "on", + "mode": "auto", + "interpState": "reading", + "taskPaused": false, + "motionPaused": false, + "activeLine": 17, + "sampleIndex": 832, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 996.516 + }, + { + "index": 64, + "elapsedMs": 82933, + "file": "frame-00064-t082933ms-running.png", + "runState": "running", + "taskState": "on", + "mode": "auto", + "interpState": "reading", + "taskPaused": false, + "motionPaused": false, + "activeLine": 17, + "sampleIndex": 839, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 996.516 + }, + { + "index": 65, + "elapsedMs": 83317, + "file": "frame-00065-t083317ms-running.png", + "runState": "running", + "taskState": "on", + "mode": "auto", + "interpState": "reading", + "taskPaused": false, + "motionPaused": false, + "activeLine": 17, + "sampleIndex": 845, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 996.516 + }, + { + "index": 66, + "elapsedMs": 83657, + "file": "frame-00066-t083657ms-running.png", + "runState": "running", + "taskState": "on", + "mode": "auto", + "interpState": "reading", + "taskPaused": false, + "motionPaused": false, + "activeLine": 17, + "sampleIndex": 851, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 996.516 + }, + { + "index": 67, + "elapsedMs": 84006, + "file": "frame-00067-t084006ms-running.png", + "runState": "running", + "taskState": "on", + "mode": "auto", + "interpState": "reading", + "taskPaused": false, + "motionPaused": false, + "activeLine": 17, + "sampleIndex": 857, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 996.516 + }, + { + "index": 68, + "elapsedMs": 84315, + "file": "frame-00068-t084315ms-running.png", + "runState": "running", + "taskState": "on", + "mode": "auto", + "interpState": "reading", + "taskPaused": false, + "motionPaused": false, + "activeLine": 17, + "sampleIndex": 863, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 996.516 + }, + { + "index": 69, + "elapsedMs": 84663, + "file": "frame-00069-t084663ms-running.png", + "runState": "running", + "taskState": "on", + "mode": "auto", + "interpState": "reading", + "taskPaused": false, + "motionPaused": false, + "activeLine": 17, + "sampleIndex": 869, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 996.516 + }, + { + "index": 70, + "elapsedMs": 85004, + "file": "frame-00070-t085004ms-running.png", + "runState": "running", + "taskState": "on", + "mode": "auto", + "interpState": "reading", + "taskPaused": false, + "motionPaused": false, + "activeLine": 17, + "sampleIndex": 875, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 996.516 + }, + { + "index": 71, + "elapsedMs": 85332, + "file": "frame-00071-t085332ms-running.png", + "runState": "running", + "taskState": "on", + "mode": "auto", + "interpState": "reading", + "taskPaused": false, + "motionPaused": false, + "activeLine": 17, + "sampleIndex": 881, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 996.516 + }, + { + "index": 72, + "elapsedMs": 85689, + "file": "frame-00072-t085689ms-running.png", + "runState": "running", + "taskState": "on", + "mode": "auto", + "interpState": "reading", + "taskPaused": false, + "motionPaused": false, + "activeLine": 17, + "sampleIndex": 887, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 996.516 + }, + { + "index": 73, + "elapsedMs": 86041, + "file": "frame-00073-t086041ms-running.png", + "runState": "running", + "taskState": "on", + "mode": "auto", + "interpState": "reading", + "taskPaused": false, + "motionPaused": false, + "activeLine": 17, + "sampleIndex": 893, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 996.516 + }, + { + "index": 74, + "elapsedMs": 86374, + "file": "frame-00074-t086374ms-running.png", + "runState": "running", + "taskState": "on", + "mode": "auto", + "interpState": "reading", + "taskPaused": false, + "motionPaused": false, + "activeLine": 17, + "sampleIndex": 898, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 996.516 + }, + { + "index": 75, + "elapsedMs": 86690, + "file": "frame-00075-t086690ms-running.png", + "runState": "running", + "taskState": "on", + "mode": "auto", + "interpState": "reading", + "taskPaused": false, + "motionPaused": false, + "activeLine": 17, + "sampleIndex": 904, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 996.516 + }, + { + "index": 76, + "elapsedMs": 87041, + "file": "frame-00076-t087041ms-running.png", + "runState": "running", + "taskState": "on", + "mode": "auto", + "interpState": "reading", + "taskPaused": false, + "motionPaused": false, + "activeLine": 17, + "sampleIndex": 911, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 996.516 + }, + { + "index": 77, + "elapsedMs": 87403, + "file": "frame-00077-t087403ms-running.png", + "runState": "running", + "taskState": "on", + "mode": "auto", + "interpState": "reading", + "taskPaused": false, + "motionPaused": false, + "activeLine": 17, + "sampleIndex": 917, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 996.516 + }, + { + "index": 78, + "elapsedMs": 87756, + "file": "frame-00078-t087756ms-running.png", + "runState": "running", + "taskState": "on", + "mode": "auto", + "interpState": "reading", + "taskPaused": false, + "motionPaused": false, + "activeLine": 17, + "sampleIndex": 923, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 996.516 + }, + { + "index": 79, + "elapsedMs": 88082, + "file": "frame-00079-t088082ms-running.png", + "runState": "running", + "taskState": "on", + "mode": "auto", + "interpState": "reading", + "taskPaused": false, + "motionPaused": false, + "activeLine": 19, + "sampleIndex": 929, + "sourceFile": "helix_bc.ngc", + "line": 19, + "statement": "g0 x0 y0 z# b0 c0", + "currentVelocity": 996.516 + }, + { + "index": 80, + "elapsedMs": 88457, + "file": "frame-00080-t088457ms-running.png", + "runState": "running", + "taskState": "on", + "mode": "auto", + "interpState": "reading", + "taskPaused": false, + "motionPaused": false, + "activeLine": 19, + "sampleIndex": 936, + "sourceFile": "helix_bc.ngc", + "line": 19, + "statement": "g0 x0 y0 z# b0 c0", + "currentVelocity": 1248.018 + }, + { + "index": 81, + "elapsedMs": 88830, + "file": "frame-00081-t088830ms-running.png", + "runState": "running", + "taskState": "on", + "mode": "auto", + "interpState": "reading", + "taskPaused": false, + "motionPaused": false, + "activeLine": 19, + "sampleIndex": 942, + "sourceFile": "helix_bc.ngc", + "line": 19, + "statement": "g0 x0 y0 z# b0 c0", + "currentVelocity": 1248.018 + }, + { + "index": 82, + "elapsedMs": 89130, + "file": "frame-00082-t089130ms-running.png", + "runState": "running", + "taskState": "on", + "mode": "auto", + "interpState": "reading", + "taskPaused": false, + "motionPaused": false, + "activeLine": 19, + "sampleIndex": 948, + "sourceFile": "helix_bc.ngc", + "line": 19, + "statement": "g0 x0 y0 z# b0 c0", + "currentVelocity": 1248.018 + }, + { + "index": 83, + "elapsedMs": 89467, + "file": "frame-00083-t089467ms-running.png", + "runState": "running", + "taskState": "on", + "mode": "auto", + "interpState": "reading", + "taskPaused": false, + "motionPaused": false, + "activeLine": 19, + "sampleIndex": 954, + "sourceFile": "helix_bc.ngc", + "line": 19, + "statement": "g0 x0 y0 z# b0 c0", + "currentVelocity": 1248.018 + }, + { + "index": 84, + "elapsedMs": 89800, + "file": "frame-00084-t089800ms-running.png", + "runState": "running", + "taskState": "on", + "mode": "auto", + "interpState": "reading", + "taskPaused": false, + "motionPaused": false, + "activeLine": 19, + "sampleIndex": 961, + "sourceFile": "helix_bc.ngc", + "line": 19, + "statement": "g0 x0 y0 z# b0 c0", + "currentVelocity": 1248.018 + }, + { + "index": 85, + "elapsedMs": 90185, + "file": "frame-00085-t090185ms-running.png", + "runState": "running", + "taskState": "on", + "mode": "auto", + "interpState": "reading", + "taskPaused": false, + "motionPaused": false, + "activeLine": 20, + "sampleIndex": 967, + "sourceFile": "helix_bc.ngc", + "line": 20, + "statement": "g0 x[#<_x> + #]", + "currentVelocity": 1999.998 + }, + { + "index": 86, + "elapsedMs": 90517, + "file": "frame-00086-t090517ms-running.png", + "runState": "running", + "taskState": "on", + "mode": "auto", + "interpState": "reading", + "taskPaused": false, + "motionPaused": false, + "activeLine": 37, + "sampleIndex": 973, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 37, + "statement": "g53 g0 x0y0 z# b0 c0 ; quadrant IV", + "currentVelocity": 1999.998 + }, + { + "index": 87, + "elapsedMs": 90823, + "file": "frame-00087-t090823ms-running.png", + "runState": "running", + "taskState": "on", + "mode": "auto", + "interpState": "reading", + "taskPaused": false, + "motionPaused": false, + "activeLine": 39, + "sampleIndex": 979, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 39, + "statement": "g0 x+20 y-20 z#", + "currentVelocity": 1996.5359999999998 + }, + { + "index": 88, + "elapsedMs": 91175, + "file": "frame-00088-t091175ms-running.png", + "runState": "running", + "taskState": "on", + "mode": "auto", + "interpState": "reading", + "taskPaused": false, + "motionPaused": false, + "activeLine": 39, + "sampleIndex": 985, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 39, + "statement": "g0 x+20 y-20 z#", + "currentVelocity": 1996.5359999999998 + }, + { + "index": 89, + "elapsedMs": 91487, + "file": "frame-00089-t091487ms-running.png", + "runState": "running", + "taskState": "on", + "mode": "auto", + "interpState": "reading", + "taskPaused": false, + "motionPaused": false, + "activeLine": 39, + "sampleIndex": 991, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 39, + "statement": "g0 x+20 y-20 z#", + "currentVelocity": 1996.5359999999998 + }, + { + "index": 90, + "elapsedMs": 91818, + "file": "frame-00090-t091818ms-running.png", + "runState": "running", + "taskState": "on", + "mode": "auto", + "interpState": "reading", + "taskPaused": false, + "motionPaused": false, + "activeLine": 13, + "sampleIndex": 997, + "sourceFile": "helix_bc.ngc", + "line": 13, + "statement": "g0 x[#<_x> - #]", + "currentVelocity": 1999.998 + }, + { + "index": 91, + "elapsedMs": 92145, + "file": "frame-00091-t092145ms-running.png", + "runState": "running", + "taskState": "on", + "mode": "auto", + "interpState": "reading", + "taskPaused": false, + "motionPaused": false, + "activeLine": 16, + "sampleIndex": 1004, + "sourceFile": "helix_bc.ngc", + "line": 16, + "statement": "g0b#c#", + "currentVelocity": 203.7696 + }, + { + "index": 92, + "elapsedMs": 92538, + "file": "frame-00092-t092538ms-running.png", + "runState": "running", + "taskState": "on", + "mode": "auto", + "interpState": "reading", + "taskPaused": false, + "motionPaused": false, + "activeLine": 16, + "sampleIndex": 1010, + "sourceFile": "helix_bc.ngc", + "line": 16, + "statement": "g0b#c#", + "currentVelocity": 203.7696 + }, + { + "index": 93, + "elapsedMs": 92856, + "file": "frame-00093-t092856ms-running.png", + "runState": "running", + "taskState": "on", + "mode": "auto", + "interpState": "reading", + "taskPaused": false, + "motionPaused": false, + "activeLine": 16, + "sampleIndex": 1016, + "sourceFile": "helix_bc.ngc", + "line": 16, + "statement": "g0b#c#", + "currentVelocity": 203.7696 + }, + { + "index": 94, + "elapsedMs": 93179, + "file": "frame-00094-t093179ms-running.png", + "runState": "running", + "taskState": "on", + "mode": "auto", + "interpState": "reading", + "taskPaused": false, + "motionPaused": false, + "activeLine": 16, + "sampleIndex": 1022, + "sourceFile": "helix_bc.ngc", + "line": 16, + "statement": "g0b#c#", + "currentVelocity": 203.7696 + }, + { + "index": 95, + "elapsedMs": 93557, + "file": "frame-00095-t093557ms-running.png", + "runState": "running", + "taskState": "on", + "mode": "auto", + "interpState": "reading", + "taskPaused": false, + "motionPaused": false, + "activeLine": 17, + "sampleIndex": 1029, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 996.516 + }, + { + "index": 96, + "elapsedMs": 93919, + "file": "frame-00096-t093919ms-running.png", + "runState": "running", + "taskState": "on", + "mode": "auto", + "interpState": "reading", + "taskPaused": false, + "motionPaused": false, + "activeLine": 17, + "sampleIndex": 1035, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 996.516 + }, + { + "index": 97, + "elapsedMs": 94270, + "file": "frame-00097-t094270ms-running.png", + "runState": "running", + "taskState": "on", + "mode": "auto", + "interpState": "reading", + "taskPaused": false, + "motionPaused": false, + "activeLine": 17, + "sampleIndex": 1041, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 996.516 + }, + { + "index": 98, + "elapsedMs": 94539, + "file": "frame-00098-t094539ms-running.png", + "runState": "running", + "taskState": "on", + "mode": "auto", + "interpState": "reading", + "taskPaused": false, + "motionPaused": false, + "activeLine": 17, + "sampleIndex": 1047, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 996.516 + }, + { + "index": 99, + "elapsedMs": 94853, + "file": "frame-00099-t094853ms-running.png", + "runState": "running", + "taskState": "on", + "mode": "auto", + "interpState": "reading", + "taskPaused": false, + "motionPaused": false, + "activeLine": 17, + "sampleIndex": 1052, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 996.516 + }, + { + "index": 100, + "elapsedMs": 95168, + "file": "frame-00100-t095168ms-running.png", + "runState": "running", + "taskState": "on", + "mode": "auto", + "interpState": "reading", + "taskPaused": false, + "motionPaused": false, + "activeLine": 17, + "sampleIndex": 1058, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 996.516 + }, + { + "index": 101, + "elapsedMs": 95511, + "file": "frame-00101-t095511ms-running.png", + "runState": "running", + "taskState": "on", + "mode": "auto", + "interpState": "reading", + "taskPaused": false, + "motionPaused": false, + "activeLine": 17, + "sampleIndex": 1064, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 996.516 + }, + { + "index": 102, + "elapsedMs": 95847, + "file": "frame-00102-t095847ms-running.png", + "runState": "running", + "taskState": "on", + "mode": "auto", + "interpState": "reading", + "taskPaused": false, + "motionPaused": false, + "activeLine": 17, + "sampleIndex": 1070, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 996.516 + }, + { + "index": 103, + "elapsedMs": 96160, + "file": "frame-00103-t096160ms-running.png", + "runState": "running", + "taskState": "on", + "mode": "auto", + "interpState": "reading", + "taskPaused": false, + "motionPaused": false, + "activeLine": 17, + "sampleIndex": 1076, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 996.516 + }, + { + "index": 104, + "elapsedMs": 96474, + "file": "frame-00104-t096474ms-running.png", + "runState": "running", + "taskState": "on", + "mode": "auto", + "interpState": "reading", + "taskPaused": false, + "motionPaused": false, + "activeLine": 17, + "sampleIndex": 1082, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 996.516 + }, + { + "index": 105, + "elapsedMs": 96830, + "file": "frame-00105-t096830ms-running.png", + "runState": "running", + "taskState": "on", + "mode": "auto", + "interpState": "reading", + "taskPaused": false, + "motionPaused": false, + "activeLine": 17, + "sampleIndex": 1089, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 996.516 + }, + { + "index": 106, + "elapsedMs": 97162, + "file": "frame-00106-t097162ms-running.png", + "runState": "running", + "taskState": "on", + "mode": "auto", + "interpState": "reading", + "taskPaused": false, + "motionPaused": false, + "activeLine": 17, + "sampleIndex": 1094, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 996.516 + }, + { + "index": 107, + "elapsedMs": 97492, + "file": "frame-00107-t097492ms-running.png", + "runState": "running", + "taskState": "on", + "mode": "auto", + "interpState": "reading", + "taskPaused": false, + "motionPaused": false, + "activeLine": 17, + "sampleIndex": 1101, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 996.516 + }, + { + "index": 108, + "elapsedMs": 97789, + "file": "frame-00108-t097789ms-running.png", + "runState": "running", + "taskState": "on", + "mode": "auto", + "interpState": "reading", + "taskPaused": false, + "motionPaused": false, + "activeLine": 17, + "sampleIndex": 1107, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 996.516 + }, + { + "index": 109, + "elapsedMs": 98119, + "file": "frame-00109-t098119ms-running.png", + "runState": "running", + "taskState": "on", + "mode": "auto", + "interpState": "reading", + "taskPaused": false, + "motionPaused": false, + "activeLine": 17, + "sampleIndex": 1113, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 996.516 + }, + { + "index": 110, + "elapsedMs": 98462, + "file": "frame-00110-t098462ms-running.png", + "runState": "running", + "taskState": "on", + "mode": "auto", + "interpState": "reading", + "taskPaused": false, + "motionPaused": false, + "activeLine": 17, + "sampleIndex": 1119, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 996.516 + }, + { + "index": 111, + "elapsedMs": 98805, + "file": "frame-00111-t098805ms-running.png", + "runState": "running", + "taskState": "on", + "mode": "auto", + "interpState": "reading", + "taskPaused": false, + "motionPaused": false, + "activeLine": 17, + "sampleIndex": 1125, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 996.516 + }, + { + "index": 112, + "elapsedMs": 99170, + "file": "frame-00112-t099170ms-running.png", + "runState": "running", + "taskState": "on", + "mode": "auto", + "interpState": "reading", + "taskPaused": false, + "motionPaused": false, + "activeLine": 17, + "sampleIndex": 1132, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 996.516 + }, + { + "index": 113, + "elapsedMs": 99483, + "file": "frame-00113-t099483ms-running.png", + "runState": "running", + "taskState": "on", + "mode": "auto", + "interpState": "reading", + "taskPaused": false, + "motionPaused": false, + "activeLine": 17, + "sampleIndex": 1138, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 996.516 + }, + { + "index": 114, + "elapsedMs": 99804, + "file": "frame-00114-t099804ms-running.png", + "runState": "running", + "taskState": "on", + "mode": "auto", + "interpState": "reading", + "taskPaused": false, + "motionPaused": false, + "activeLine": 17, + "sampleIndex": 1144, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 996.516 + }, + { + "index": 115, + "elapsedMs": 100159, + "file": "frame-00115-t100159ms-running.png", + "runState": "running", + "taskState": "on", + "mode": "auto", + "interpState": "reading", + "taskPaused": false, + "motionPaused": false, + "activeLine": 17, + "sampleIndex": 1150, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 996.516 + }, + { + "index": 116, + "elapsedMs": 100468, + "file": "frame-00116-t100468ms-running.png", + "runState": "running", + "taskState": "on", + "mode": "auto", + "interpState": "reading", + "taskPaused": false, + "motionPaused": false, + "activeLine": 17, + "sampleIndex": 1156, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 996.516 + }, + { + "index": 117, + "elapsedMs": 100818, + "file": "frame-00117-t100818ms-running.png", + "runState": "running", + "taskState": "on", + "mode": "auto", + "interpState": "reading", + "taskPaused": false, + "motionPaused": false, + "activeLine": 17, + "sampleIndex": 1162, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 996.516 + }, + { + "index": 118, + "elapsedMs": 101146, + "file": "frame-00118-t101146ms-running.png", + "runState": "running", + "taskState": "on", + "mode": "auto", + "interpState": "reading", + "taskPaused": false, + "motionPaused": false, + "activeLine": 17, + "sampleIndex": 1168, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 996.516 + }, + { + "index": 119, + "elapsedMs": 101495, + "file": "frame-00119-t101495ms-running.png", + "runState": "running", + "taskState": "on", + "mode": "auto", + "interpState": "reading", + "taskPaused": false, + "motionPaused": false, + "activeLine": 17, + "sampleIndex": 1175, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 996.516 + }, + { + "index": 120, + "elapsedMs": 101875, + "file": "frame-00120-t101875ms-running.png", + "runState": "running", + "taskState": "on", + "mode": "auto", + "interpState": "reading", + "taskPaused": false, + "motionPaused": false, + "activeLine": 17, + "sampleIndex": 1182, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 996.516 + }, + { + "index": 121, + "elapsedMs": 102209, + "file": "frame-00121-t102209ms-running.png", + "runState": "running", + "taskState": "on", + "mode": "auto", + "interpState": "reading", + "taskPaused": false, + "motionPaused": false, + "activeLine": 17, + "sampleIndex": 1189, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 996.516 + }, + { + "index": 122, + "elapsedMs": 102556, + "file": "frame-00122-t102556ms-running.png", + "runState": "running", + "taskState": "on", + "mode": "auto", + "interpState": "reading", + "taskPaused": false, + "motionPaused": false, + "activeLine": 17, + "sampleIndex": 1194, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 996.516 + }, + { + "index": 123, + "elapsedMs": 102890, + "file": "frame-00123-t102890ms-running.png", + "runState": "running", + "taskState": "on", + "mode": "auto", + "interpState": "reading", + "taskPaused": false, + "motionPaused": false, + "activeLine": 17, + "sampleIndex": 1200, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 996.516 + }, + { + "index": 124, + "elapsedMs": 103218, + "file": "frame-00124-t103218ms-running.png", + "runState": "running", + "taskState": "on", + "mode": "auto", + "interpState": "reading", + "taskPaused": false, + "motionPaused": false, + "activeLine": 17, + "sampleIndex": 1206, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 996.516 + }, + { + "index": 125, + "elapsedMs": 103539, + "file": "frame-00125-t103539ms-running.png", + "runState": "running", + "taskState": "on", + "mode": "auto", + "interpState": "reading", + "taskPaused": false, + "motionPaused": false, + "activeLine": 17, + "sampleIndex": 1212, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 996.516 + }, + { + "index": 126, + "elapsedMs": 103846, + "file": "frame-00126-t103846ms-running.png", + "runState": "running", + "taskState": "on", + "mode": "auto", + "interpState": "reading", + "taskPaused": false, + "motionPaused": false, + "activeLine": 17, + "sampleIndex": 1217, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 996.516 + }, + { + "index": 127, + "elapsedMs": 104172, + "file": "frame-00127-t104172ms-running.png", + "runState": "running", + "taskState": "on", + "mode": "auto", + "interpState": "reading", + "taskPaused": false, + "motionPaused": false, + "activeLine": 17, + "sampleIndex": 1223, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 996.516 + }, + { + "index": 128, + "elapsedMs": 104498, + "file": "frame-00128-t104498ms-running.png", + "runState": "running", + "taskState": "on", + "mode": "auto", + "interpState": "reading", + "taskPaused": false, + "motionPaused": false, + "activeLine": 17, + "sampleIndex": 1230, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 996.516 + }, + { + "index": 129, + "elapsedMs": 104853, + "file": "frame-00129-t104853ms-running.png", + "runState": "running", + "taskState": "on", + "mode": "auto", + "interpState": "reading", + "taskPaused": false, + "motionPaused": false, + "activeLine": 17, + "sampleIndex": 1236, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 996.516 + }, + { + "index": 130, + "elapsedMs": 105176, + "file": "frame-00130-t105176ms-running.png", + "runState": "running", + "taskState": "on", + "mode": "auto", + "interpState": "reading", + "taskPaused": false, + "motionPaused": false, + "activeLine": 17, + "sampleIndex": 1242, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 996.516 + }, + { + "index": 131, + "elapsedMs": 105518, + "file": "frame-00131-t105518ms-running.png", + "runState": "running", + "taskState": "on", + "mode": "auto", + "interpState": "reading", + "taskPaused": false, + "motionPaused": false, + "activeLine": 17, + "sampleIndex": 1247, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 996.516 + }, + { + "index": 132, + "elapsedMs": 105860, + "file": "frame-00132-t105860ms-running.png", + "runState": "running", + "taskState": "on", + "mode": "auto", + "interpState": "reading", + "taskPaused": false, + "motionPaused": false, + "activeLine": 17, + "sampleIndex": 1254, + "sourceFile": "helix_bc.ngc", + "line": 17, + "statement": "f# g2i#z# p#", + "currentVelocity": 996.516 + }, + { + "index": 133, + "elapsedMs": 106220, + "file": "frame-00133-t106220ms-running.png", + "runState": "running", + "taskState": "on", + "mode": "auto", + "interpState": "reading", + "taskPaused": false, + "motionPaused": false, + "activeLine": 19, + "sampleIndex": 1260, + "sourceFile": "helix_bc.ngc", + "line": 19, + "statement": "g0 x0 y0 z# b0 c0", + "currentVelocity": 859.2299999999999 + }, + { + "index": 134, + "elapsedMs": 106532, + "file": "frame-00134-t106532ms-running.png", + "runState": "running", + "taskState": "on", + "mode": "auto", + "interpState": "reading", + "taskPaused": false, + "motionPaused": false, + "activeLine": 19, + "sampleIndex": 1266, + "sourceFile": "helix_bc.ngc", + "line": 19, + "statement": "g0 x0 y0 z# b0 c0", + "currentVelocity": 859.2299999999999 + }, + { + "index": 135, + "elapsedMs": 106856, + "file": "frame-00135-t106856ms-running.png", + "runState": "running", + "taskState": "on", + "mode": "auto", + "interpState": "reading", + "taskPaused": false, + "motionPaused": false, + "activeLine": 19, + "sampleIndex": 1272, + "sourceFile": "helix_bc.ngc", + "line": 19, + "statement": "g0 x0 y0 z# b0 c0", + "currentVelocity": 859.2299999999999 + }, + { + "index": 136, + "elapsedMs": 107183, + "file": "frame-00136-t107183ms-running.png", + "runState": "running", + "taskState": "on", + "mode": "auto", + "interpState": "reading", + "taskPaused": false, + "motionPaused": false, + "activeLine": 19, + "sampleIndex": 1278, + "sourceFile": "helix_bc.ngc", + "line": 19, + "statement": "g0 x0 y0 z# b0 c0", + "currentVelocity": 859.2299999999999 + }, + { + "index": 137, + "elapsedMs": 107538, + "file": "frame-00137-t107538ms-running.png", + "runState": "running", + "taskState": "on", + "mode": "auto", + "interpState": "reading", + "taskPaused": false, + "motionPaused": false, + "activeLine": 19, + "sampleIndex": 1285, + "sourceFile": "helix_bc.ngc", + "line": 19, + "statement": "g0 x0 y0 z# b0 c0", + "currentVelocity": 859.2299999999999 + }, + { + "index": 138, + "elapsedMs": 107898, + "file": "frame-00138-t107898ms-running.png", + "runState": "running", + "taskState": "on", + "mode": "auto", + "interpState": "reading", + "taskPaused": false, + "motionPaused": false, + "activeLine": 20, + "sampleIndex": 1291, + "sourceFile": "helix_bc.ngc", + "line": 20, + "statement": "g0 x[#<_x> + #]", + "currentVelocity": 1999.998 + }, + { + "index": 139, + "elapsedMs": 108272, + "file": "frame-00139-t108272ms-running.png", + "runState": "running", + "taskState": "on", + "mode": "auto", + "interpState": "reading", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1298, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 140, + "elapsedMs": 108536, + "file": "frame-00140-t108536ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 141, + "elapsedMs": 108731, + "file": "frame-00141-t108731ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 142, + "elapsedMs": 108913, + "file": "frame-00142-t108913ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 143, + "elapsedMs": 109090, + "file": "frame-00143-t109090ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 144, + "elapsedMs": 109260, + "file": "frame-00144-t109260ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 145, + "elapsedMs": 109469, + "file": "frame-00145-t109469ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 146, + "elapsedMs": 109635, + "file": "frame-00146-t109635ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 147, + "elapsedMs": 109803, + "file": "frame-00147-t109803ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 148, + "elapsedMs": 109968, + "file": "frame-00148-t109968ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 149, + "elapsedMs": 110143, + "file": "frame-00149-t110143ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 150, + "elapsedMs": 110303, + "file": "frame-00150-t110303ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 151, + "elapsedMs": 110471, + "file": "frame-00151-t110471ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 152, + "elapsedMs": 110639, + "file": "frame-00152-t110639ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 153, + "elapsedMs": 110802, + "file": "frame-00153-t110802ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 154, + "elapsedMs": 110969, + "file": "frame-00154-t110969ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 155, + "elapsedMs": 111138, + "file": "frame-00155-t111138ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 156, + "elapsedMs": 111300, + "file": "frame-00156-t111300ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 157, + "elapsedMs": 111454, + "file": "frame-00157-t111454ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 158, + "elapsedMs": 111622, + "file": "frame-00158-t111622ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 159, + "elapsedMs": 111783, + "file": "frame-00159-t111783ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 160, + "elapsedMs": 111949, + "file": "frame-00160-t111949ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 161, + "elapsedMs": 112121, + "file": "frame-00161-t112121ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 162, + "elapsedMs": 112282, + "file": "frame-00162-t112282ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 163, + "elapsedMs": 112446, + "file": "frame-00163-t112446ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 164, + "elapsedMs": 112618, + "file": "frame-00164-t112618ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 165, + "elapsedMs": 112788, + "file": "frame-00165-t112788ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 166, + "elapsedMs": 112951, + "file": "frame-00166-t112951ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 167, + "elapsedMs": 113118, + "file": "frame-00167-t113118ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 168, + "elapsedMs": 113288, + "file": "frame-00168-t113288ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 169, + "elapsedMs": 113456, + "file": "frame-00169-t113456ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 170, + "elapsedMs": 113621, + "file": "frame-00170-t113621ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 171, + "elapsedMs": 113790, + "file": "frame-00171-t113790ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 172, + "elapsedMs": 113953, + "file": "frame-00172-t113953ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 173, + "elapsedMs": 114128, + "file": "frame-00173-t114128ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 174, + "elapsedMs": 114299, + "file": "frame-00174-t114299ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 175, + "elapsedMs": 114472, + "file": "frame-00175-t114472ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 176, + "elapsedMs": 114636, + "file": "frame-00176-t114636ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 177, + "elapsedMs": 114808, + "file": "frame-00177-t114808ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 178, + "elapsedMs": 114966, + "file": "frame-00178-t114966ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 179, + "elapsedMs": 115139, + "file": "frame-00179-t115139ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 180, + "elapsedMs": 115301, + "file": "frame-00180-t115301ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 181, + "elapsedMs": 115507, + "file": "frame-00181-t115507ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 182, + "elapsedMs": 115694, + "file": "frame-00182-t115694ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 183, + "elapsedMs": 115848, + "file": "frame-00183-t115848ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 184, + "elapsedMs": 116020, + "file": "frame-00184-t116020ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 185, + "elapsedMs": 116187, + "file": "frame-00185-t116187ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 186, + "elapsedMs": 116352, + "file": "frame-00186-t116352ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 187, + "elapsedMs": 116519, + "file": "frame-00187-t116519ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 188, + "elapsedMs": 116688, + "file": "frame-00188-t116688ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 189, + "elapsedMs": 116855, + "file": "frame-00189-t116855ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 190, + "elapsedMs": 117021, + "file": "frame-00190-t117021ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 191, + "elapsedMs": 117201, + "file": "frame-00191-t117201ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 192, + "elapsedMs": 117369, + "file": "frame-00192-t117369ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 193, + "elapsedMs": 117542, + "file": "frame-00193-t117542ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 194, + "elapsedMs": 117708, + "file": "frame-00194-t117708ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 195, + "elapsedMs": 117873, + "file": "frame-00195-t117873ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 196, + "elapsedMs": 118038, + "file": "frame-00196-t118038ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 197, + "elapsedMs": 118207, + "file": "frame-00197-t118207ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 198, + "elapsedMs": 118381, + "file": "frame-00198-t118381ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 199, + "elapsedMs": 118557, + "file": "frame-00199-t118557ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 200, + "elapsedMs": 118724, + "file": "frame-00200-t118724ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 201, + "elapsedMs": 118905, + "file": "frame-00201-t118905ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 202, + "elapsedMs": 119071, + "file": "frame-00202-t119071ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 203, + "elapsedMs": 119254, + "file": "frame-00203-t119254ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 204, + "elapsedMs": 119423, + "file": "frame-00204-t119423ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 205, + "elapsedMs": 119589, + "file": "frame-00205-t119589ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 206, + "elapsedMs": 119765, + "file": "frame-00206-t119765ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 207, + "elapsedMs": 119929, + "file": "frame-00207-t119929ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 208, + "elapsedMs": 120107, + "file": "frame-00208-t120107ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 209, + "elapsedMs": 120276, + "file": "frame-00209-t120276ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 210, + "elapsedMs": 120435, + "file": "frame-00210-t120435ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 211, + "elapsedMs": 120601, + "file": "frame-00211-t120601ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 212, + "elapsedMs": 120770, + "file": "frame-00212-t120770ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 213, + "elapsedMs": 120961, + "file": "frame-00213-t120961ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 214, + "elapsedMs": 121123, + "file": "frame-00214-t121123ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 215, + "elapsedMs": 121305, + "file": "frame-00215-t121305ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 216, + "elapsedMs": 121479, + "file": "frame-00216-t121479ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 217, + "elapsedMs": 121695, + "file": "frame-00217-t121695ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 218, + "elapsedMs": 121880, + "file": "frame-00218-t121880ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 219, + "elapsedMs": 122054, + "file": "frame-00219-t122054ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 220, + "elapsedMs": 122221, + "file": "frame-00220-t122221ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 221, + "elapsedMs": 122386, + "file": "frame-00221-t122386ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 222, + "elapsedMs": 122554, + "file": "frame-00222-t122554ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 223, + "elapsedMs": 122720, + "file": "frame-00223-t122720ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 224, + "elapsedMs": 122913, + "file": "frame-00224-t122913ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 225, + "elapsedMs": 123075, + "file": "frame-00225-t123075ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 226, + "elapsedMs": 123236, + "file": "frame-00226-t123236ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 227, + "elapsedMs": 123402, + "file": "frame-00227-t123402ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 228, + "elapsedMs": 123573, + "file": "frame-00228-t123573ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 229, + "elapsedMs": 123743, + "file": "frame-00229-t123743ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 230, + "elapsedMs": 123921, + "file": "frame-00230-t123921ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 231, + "elapsedMs": 124090, + "file": "frame-00231-t124090ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 232, + "elapsedMs": 124255, + "file": "frame-00232-t124255ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 233, + "elapsedMs": 124417, + "file": "frame-00233-t124417ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 234, + "elapsedMs": 124589, + "file": "frame-00234-t124589ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 235, + "elapsedMs": 124782, + "file": "frame-00235-t124782ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 236, + "elapsedMs": 124961, + "file": "frame-00236-t124961ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 237, + "elapsedMs": 125140, + "file": "frame-00237-t125140ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 238, + "elapsedMs": 125310, + "file": "frame-00238-t125310ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 239, + "elapsedMs": 125481, + "file": "frame-00239-t125481ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 240, + "elapsedMs": 125657, + "file": "frame-00240-t125657ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 241, + "elapsedMs": 125838, + "file": "frame-00241-t125838ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 242, + "elapsedMs": 126010, + "file": "frame-00242-t126010ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 243, + "elapsedMs": 126190, + "file": "frame-00243-t126190ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 244, + "elapsedMs": 126354, + "file": "frame-00244-t126354ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 245, + "elapsedMs": 126524, + "file": "frame-00245-t126524ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 246, + "elapsedMs": 126715, + "file": "frame-00246-t126715ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 247, + "elapsedMs": 126871, + "file": "frame-00247-t126871ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 248, + "elapsedMs": 127035, + "file": "frame-00248-t127035ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 249, + "elapsedMs": 127200, + "file": "frame-00249-t127200ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 250, + "elapsedMs": 127365, + "file": "frame-00250-t127365ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 251, + "elapsedMs": 127538, + "file": "frame-00251-t127538ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 252, + "elapsedMs": 127729, + "file": "frame-00252-t127729ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 253, + "elapsedMs": 127922, + "file": "frame-00253-t127922ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 254, + "elapsedMs": 128103, + "file": "frame-00254-t128103ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 255, + "elapsedMs": 128268, + "file": "frame-00255-t128268ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 256, + "elapsedMs": 128440, + "file": "frame-00256-t128440ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 257, + "elapsedMs": 128604, + "file": "frame-00257-t128604ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 258, + "elapsedMs": 128774, + "file": "frame-00258-t128774ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 259, + "elapsedMs": 128943, + "file": "frame-00259-t128943ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 260, + "elapsedMs": 129116, + "file": "frame-00260-t129116ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 261, + "elapsedMs": 129286, + "file": "frame-00261-t129286ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 262, + "elapsedMs": 129462, + "file": "frame-00262-t129462ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 263, + "elapsedMs": 129621, + "file": "frame-00263-t129621ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 264, + "elapsedMs": 129795, + "file": "frame-00264-t129795ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 265, + "elapsedMs": 129952, + "file": "frame-00265-t129952ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 266, + "elapsedMs": 130121, + "file": "frame-00266-t130121ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 267, + "elapsedMs": 130288, + "file": "frame-00267-t130288ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 268, + "elapsedMs": 130455, + "file": "frame-00268-t130455ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 269, + "elapsedMs": 130623, + "file": "frame-00269-t130623ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 270, + "elapsedMs": 130788, + "file": "frame-00270-t130788ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 271, + "elapsedMs": 130958, + "file": "frame-00271-t130958ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 272, + "elapsedMs": 131120, + "file": "frame-00272-t131120ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 273, + "elapsedMs": 131289, + "file": "frame-00273-t131289ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 274, + "elapsedMs": 131455, + "file": "frame-00274-t131455ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 275, + "elapsedMs": 131626, + "file": "frame-00275-t131626ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 276, + "elapsedMs": 131788, + "file": "frame-00276-t131788ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 277, + "elapsedMs": 131952, + "file": "frame-00277-t131952ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 278, + "elapsedMs": 132141, + "file": "frame-00278-t132141ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 279, + "elapsedMs": 132309, + "file": "frame-00279-t132309ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 280, + "elapsedMs": 132485, + "file": "frame-00280-t132485ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 281, + "elapsedMs": 132656, + "file": "frame-00281-t132656ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 282, + "elapsedMs": 132819, + "file": "frame-00282-t132819ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 283, + "elapsedMs": 133003, + "file": "frame-00283-t133003ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 284, + "elapsedMs": 133188, + "file": "frame-00284-t133188ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 285, + "elapsedMs": 133364, + "file": "frame-00285-t133364ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 286, + "elapsedMs": 133543, + "file": "frame-00286-t133543ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 287, + "elapsedMs": 133718, + "file": "frame-00287-t133718ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 288, + "elapsedMs": 133891, + "file": "frame-00288-t133891ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 289, + "elapsedMs": 134109, + "file": "frame-00289-t134109ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 290, + "elapsedMs": 134289, + "file": "frame-00290-t134289ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 291, + "elapsedMs": 134454, + "file": "frame-00291-t134454ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 292, + "elapsedMs": 134619, + "file": "frame-00292-t134619ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 293, + "elapsedMs": 134783, + "file": "frame-00293-t134783ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 294, + "elapsedMs": 134955, + "file": "frame-00294-t134955ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 295, + "elapsedMs": 135122, + "file": "frame-00295-t135122ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 296, + "elapsedMs": 135287, + "file": "frame-00296-t135287ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 297, + "elapsedMs": 135446, + "file": "frame-00297-t135446ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 298, + "elapsedMs": 135600, + "file": "frame-00298-t135600ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 299, + "elapsedMs": 135761, + "file": "frame-00299-t135761ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 300, + "elapsedMs": 135928, + "file": "frame-00300-t135928ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 301, + "elapsedMs": 136094, + "file": "frame-00301-t136094ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 302, + "elapsedMs": 136254, + "file": "frame-00302-t136254ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 303, + "elapsedMs": 136420, + "file": "frame-00303-t136420ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 304, + "elapsedMs": 136585, + "file": "frame-00304-t136585ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 305, + "elapsedMs": 136754, + "file": "frame-00305-t136754ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 306, + "elapsedMs": 136917, + "file": "frame-00306-t136917ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 307, + "elapsedMs": 137089, + "file": "frame-00307-t137089ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 308, + "elapsedMs": 137248, + "file": "frame-00308-t137248ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 309, + "elapsedMs": 137418, + "file": "frame-00309-t137418ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 310, + "elapsedMs": 137588, + "file": "frame-00310-t137588ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 311, + "elapsedMs": 137759, + "file": "frame-00311-t137759ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 312, + "elapsedMs": 137926, + "file": "frame-00312-t137926ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 313, + "elapsedMs": 138082, + "file": "frame-00313-t138082ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 314, + "elapsedMs": 138252, + "file": "frame-00314-t138252ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 315, + "elapsedMs": 138417, + "file": "frame-00315-t138417ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 316, + "elapsedMs": 138585, + "file": "frame-00316-t138585ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 317, + "elapsedMs": 138750, + "file": "frame-00317-t138750ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 318, + "elapsedMs": 138919, + "file": "frame-00318-t138919ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 319, + "elapsedMs": 139086, + "file": "frame-00319-t139086ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 320, + "elapsedMs": 139257, + "file": "frame-00320-t139257ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 321, + "elapsedMs": 139437, + "file": "frame-00321-t139437ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 322, + "elapsedMs": 139605, + "file": "frame-00322-t139605ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 323, + "elapsedMs": 139773, + "file": "frame-00323-t139773ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 324, + "elapsedMs": 139943, + "file": "frame-00324-t139943ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 325, + "elapsedMs": 140140, + "file": "frame-00325-t140140ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 326, + "elapsedMs": 140307, + "file": "frame-00326-t140307ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 327, + "elapsedMs": 140470, + "file": "frame-00327-t140470ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 328, + "elapsedMs": 140635, + "file": "frame-00328-t140635ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 329, + "elapsedMs": 140802, + "file": "frame-00329-t140802ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 330, + "elapsedMs": 140977, + "file": "frame-00330-t140977ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 331, + "elapsedMs": 141133, + "file": "frame-00331-t141133ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 332, + "elapsedMs": 141300, + "file": "frame-00332-t141300ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 333, + "elapsedMs": 141476, + "file": "frame-00333-t141476ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 334, + "elapsedMs": 141631, + "file": "frame-00334-t141631ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 335, + "elapsedMs": 141799, + "file": "frame-00335-t141799ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 336, + "elapsedMs": 141964, + "file": "frame-00336-t141964ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 337, + "elapsedMs": 142134, + "file": "frame-00337-t142134ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 338, + "elapsedMs": 142301, + "file": "frame-00338-t142301ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 339, + "elapsedMs": 142466, + "file": "frame-00339-t142466ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 340, + "elapsedMs": 142635, + "file": "frame-00340-t142635ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 341, + "elapsedMs": 142802, + "file": "frame-00341-t142802ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 342, + "elapsedMs": 142966, + "file": "frame-00342-t142966ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 343, + "elapsedMs": 143133, + "file": "frame-00343-t143133ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 344, + "elapsedMs": 143300, + "file": "frame-00344-t143300ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 345, + "elapsedMs": 143470, + "file": "frame-00345-t143470ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 346, + "elapsedMs": 143634, + "file": "frame-00346-t143634ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 347, + "elapsedMs": 143801, + "file": "frame-00347-t143801ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 348, + "elapsedMs": 143954, + "file": "frame-00348-t143954ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 349, + "elapsedMs": 144117, + "file": "frame-00349-t144117ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 350, + "elapsedMs": 144286, + "file": "frame-00350-t144286ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 351, + "elapsedMs": 144449, + "file": "frame-00351-t144449ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 352, + "elapsedMs": 144619, + "file": "frame-00352-t144619ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 353, + "elapsedMs": 144781, + "file": "frame-00353-t144781ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 354, + "elapsedMs": 144950, + "file": "frame-00354-t144950ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 355, + "elapsedMs": 145108, + "file": "frame-00355-t145108ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 356, + "elapsedMs": 145285, + "file": "frame-00356-t145285ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 357, + "elapsedMs": 145452, + "file": "frame-00357-t145452ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 358, + "elapsedMs": 145618, + "file": "frame-00358-t145618ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 359, + "elapsedMs": 145787, + "file": "frame-00359-t145787ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 360, + "elapsedMs": 145955, + "file": "frame-00360-t145955ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 361, + "elapsedMs": 146159, + "file": "frame-00361-t146159ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 362, + "elapsedMs": 146373, + "file": "frame-00362-t146373ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 363, + "elapsedMs": 146554, + "file": "frame-00363-t146554ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 364, + "elapsedMs": 146720, + "file": "frame-00364-t146720ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 365, + "elapsedMs": 146904, + "file": "frame-00365-t146904ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 366, + "elapsedMs": 147071, + "file": "frame-00366-t147071ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 367, + "elapsedMs": 147233, + "file": "frame-00367-t147233ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 368, + "elapsedMs": 147402, + "file": "frame-00368-t147402ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 369, + "elapsedMs": 147575, + "file": "frame-00369-t147575ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 370, + "elapsedMs": 147731, + "file": "frame-00370-t147731ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 371, + "elapsedMs": 147899, + "file": "frame-00371-t147899ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 372, + "elapsedMs": 148067, + "file": "frame-00372-t148067ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 373, + "elapsedMs": 148232, + "file": "frame-00373-t148232ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 374, + "elapsedMs": 148384, + "file": "frame-00374-t148384ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 375, + "elapsedMs": 148550, + "file": "frame-00375-t148550ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 376, + "elapsedMs": 148722, + "file": "frame-00376-t148722ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 377, + "elapsedMs": 148892, + "file": "frame-00377-t148892ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 378, + "elapsedMs": 149077, + "file": "frame-00378-t149077ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 379, + "elapsedMs": 149245, + "file": "frame-00379-t149245ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 380, + "elapsedMs": 149415, + "file": "frame-00380-t149415ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 381, + "elapsedMs": 149591, + "file": "frame-00381-t149591ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 382, + "elapsedMs": 149758, + "file": "frame-00382-t149758ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 383, + "elapsedMs": 149920, + "file": "frame-00383-t149920ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 384, + "elapsedMs": 150104, + "file": "frame-00384-t150104ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 385, + "elapsedMs": 150287, + "file": "frame-00385-t150287ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 386, + "elapsedMs": 150452, + "file": "frame-00386-t150452ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 387, + "elapsedMs": 150617, + "file": "frame-00387-t150617ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 388, + "elapsedMs": 150789, + "file": "frame-00388-t150789ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 389, + "elapsedMs": 150947, + "file": "frame-00389-t150947ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 390, + "elapsedMs": 151104, + "file": "frame-00390-t151104ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 391, + "elapsedMs": 151270, + "file": "frame-00391-t151270ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 392, + "elapsedMs": 151436, + "file": "frame-00392-t151436ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 393, + "elapsedMs": 151604, + "file": "frame-00393-t151604ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 394, + "elapsedMs": 151770, + "file": "frame-00394-t151770ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 395, + "elapsedMs": 151935, + "file": "frame-00395-t151935ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 396, + "elapsedMs": 152104, + "file": "frame-00396-t152104ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 397, + "elapsedMs": 152307, + "file": "frame-00397-t152307ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 398, + "elapsedMs": 152491, + "file": "frame-00398-t152491ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 399, + "elapsedMs": 152674, + "file": "frame-00399-t152674ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 400, + "elapsedMs": 152850, + "file": "frame-00400-t152850ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 401, + "elapsedMs": 153025, + "file": "frame-00401-t153025ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 402, + "elapsedMs": 153202, + "file": "frame-00402-t153202ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 403, + "elapsedMs": 153365, + "file": "frame-00403-t153365ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 404, + "elapsedMs": 153535, + "file": "frame-00404-t153535ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 405, + "elapsedMs": 153700, + "file": "frame-00405-t153700ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 406, + "elapsedMs": 153865, + "file": "frame-00406-t153865ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 407, + "elapsedMs": 154035, + "file": "frame-00407-t154035ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 408, + "elapsedMs": 154201, + "file": "frame-00408-t154201ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 409, + "elapsedMs": 154363, + "file": "frame-00409-t154363ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 410, + "elapsedMs": 154533, + "file": "frame-00410-t154533ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 411, + "elapsedMs": 154700, + "file": "frame-00411-t154700ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 412, + "elapsedMs": 154866, + "file": "frame-00412-t154866ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 413, + "elapsedMs": 155036, + "file": "frame-00413-t155036ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 414, + "elapsedMs": 155204, + "file": "frame-00414-t155204ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 415, + "elapsedMs": 155365, + "file": "frame-00415-t155365ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 416, + "elapsedMs": 155535, + "file": "frame-00416-t155535ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 417, + "elapsedMs": 155706, + "file": "frame-00417-t155706ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 418, + "elapsedMs": 155878, + "file": "frame-00418-t155878ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 419, + "elapsedMs": 156039, + "file": "frame-00419-t156039ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 420, + "elapsedMs": 156199, + "file": "frame-00420-t156199ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 421, + "elapsedMs": 156371, + "file": "frame-00421-t156371ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 422, + "elapsedMs": 156539, + "file": "frame-00422-t156539ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 423, + "elapsedMs": 156704, + "file": "frame-00423-t156704ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 424, + "elapsedMs": 156871, + "file": "frame-00424-t156871ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 425, + "elapsedMs": 157054, + "file": "frame-00425-t157054ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 426, + "elapsedMs": 157235, + "file": "frame-00426-t157235ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 427, + "elapsedMs": 157415, + "file": "frame-00427-t157415ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 428, + "elapsedMs": 157581, + "file": "frame-00428-t157581ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 429, + "elapsedMs": 157734, + "file": "frame-00429-t157734ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 430, + "elapsedMs": 157902, + "file": "frame-00430-t157902ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 431, + "elapsedMs": 158068, + "file": "frame-00431-t158068ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 432, + "elapsedMs": 158238, + "file": "frame-00432-t158238ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 433, + "elapsedMs": 158422, + "file": "frame-00433-t158422ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 434, + "elapsedMs": 158584, + "file": "frame-00434-t158584ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 435, + "elapsedMs": 158751, + "file": "frame-00435-t158751ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 436, + "elapsedMs": 158932, + "file": "frame-00436-t158932ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 437, + "elapsedMs": 159092, + "file": "frame-00437-t159092ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 438, + "elapsedMs": 159255, + "file": "frame-00438-t159255ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 439, + "elapsedMs": 159435, + "file": "frame-00439-t159435ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 440, + "elapsedMs": 159605, + "file": "frame-00440-t159605ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 441, + "elapsedMs": 159772, + "file": "frame-00441-t159772ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 442, + "elapsedMs": 159932, + "file": "frame-00442-t159932ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 443, + "elapsedMs": 160104, + "file": "frame-00443-t160104ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 444, + "elapsedMs": 160268, + "file": "frame-00444-t160268ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 445, + "elapsedMs": 160435, + "file": "frame-00445-t160435ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 446, + "elapsedMs": 160602, + "file": "frame-00446-t160602ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 447, + "elapsedMs": 160767, + "file": "frame-00447-t160767ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 448, + "elapsedMs": 160933, + "file": "frame-00448-t160933ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 449, + "elapsedMs": 161088, + "file": "frame-00449-t161088ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 450, + "elapsedMs": 161257, + "file": "frame-00450-t161257ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 451, + "elapsedMs": 161443, + "file": "frame-00451-t161443ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 452, + "elapsedMs": 161601, + "file": "frame-00452-t161601ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 453, + "elapsedMs": 161775, + "file": "frame-00453-t161775ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 454, + "elapsedMs": 161952, + "file": "frame-00454-t161952ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 455, + "elapsedMs": 162120, + "file": "frame-00455-t162120ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 456, + "elapsedMs": 162285, + "file": "frame-00456-t162285ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 457, + "elapsedMs": 162449, + "file": "frame-00457-t162449ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 458, + "elapsedMs": 162618, + "file": "frame-00458-t162618ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 459, + "elapsedMs": 162787, + "file": "frame-00459-t162787ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 460, + "elapsedMs": 162966, + "file": "frame-00460-t162966ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 461, + "elapsedMs": 163134, + "file": "frame-00461-t163134ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + }, + { + "index": 462, + "elapsedMs": 163298, + "file": "frame-00462-t163298ms-complete.png", + "runState": "complete", + "taskState": "on", + "mode": "auto", + "interpState": "idle", + "taskPaused": false, + "motionPaused": false, + "activeLine": 44, + "sampleIndex": 1299, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "currentVelocity": 1999.998 + } + ], + "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": "complete", + "taskState": "on", + "powerOn": true, + "estopActive": false, + "allHomed": true, + "mode": "auto", + "interpState": "idle", + "interpResumeState": "idle", + "taskPaused": false, + "motionPaused": false, + "rtcpState": "off", + "kinsType": "identity", + "activeLine": 44, + "programExecutionSourceMode": "linuxcnc-task-motion-hal-wasm", + "programExecutionSampleIndex": 1299, + "programRuntimeFeedback": { + "apiName": "web-rtcp-5axis-program-runtime-feedback", + "sourceMode": "linuxcnc-task-motion-hal-wasm", + "semanticBoundary": "linuxcnc_task_motion_hal_wasm_simulation_runtime", + "sampleIndex": 1299, + "motionIndex": 28, + "line": 44, + "motionProgramLine": 44, + "halProgramLine": 44, + "activeLineSource": "motion-status", + "activeLineHalSynced": true, + "type": "TASK_MOTION", + "paused": false, + "timeSeconds": 0, + "axisPose": { + "x": 0, + "y": 0, + "z": 10, + "a": 0, + "b": 0, + "c": 0 + }, + "currentVelocityMmPerMin": 1999.998, + "requestedVelocityMmPerMin": 1999.998, + "distanceToGo": 0, + "dtg": { + "x": 0, + "y": 0, + "z": 0 + }, + "queueDepth": 0, + "activeDepth": 0, + "cycle": 69890, + "taskCycle": 6989, + "halChangedPinCount": 0, + "sourceFile": "xyzbc_switchkins_sub.ngc", + "statement": "g53 g0 x0y0 z#", + "motionType": "rapid", + "activeKinematics": "identity", + "tcp": { + "x": 0, + "y": 0, + "z": 10 + }, + "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, + "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": "running", + "source": "programAxisPreviewPath.samples", + "samplePeriodMs": 50, + "sampleIndex": 1299, + "sampleCount": 1300, + "executedSampleCount": 1300, + "timeMs": 64950, + "activeProgram": "configs/sim/axis/vismach/5axis/table-rotary-tilting/demos/xyzbc_switchkins.ngc", + "sourceFile": "xyzbc_switchkins_sub.ngc", + "line": 44, + "statement": "g53 g0 x0y0 z#", + "operation": "rapid-final-machine-reset", + "executionIndex": 62, + "gcodeStepIndex": 124, + "segmentIndex": 28, + "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": 1999.998, + "operatorMessage": "task/HAL status tick 955", + "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": "44", + "liveSampleIndex": "1299", + "liveExecutedSamples": "1300", + "gcodeExecutionStatus": "ok", + "gcodeExecutionStepCount": "128", + "gcodeMotionStepCount": "29", + "gcodeParameterStepCount": "41", + "gcodeCallDepth": "1" + }, + "processMonitorDataset": { + "linuxcncProcessMonitor": "", + "sourceMode": "linuxcnc-task-motion-hal-wasm", + "taskHalReady": "true", + "activeLine": "44", + "liveSourceFile": "xyzbc_switchkins_sub.ngc", + "liveSourceLine": "44", + "liveSampleIndex": "1299" + } + } +} diff --git a/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/snapshot-setup-estop-active.png b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/snapshot-setup-estop-active.png new file mode 100644 index 0000000..3d5bf8e Binary files /dev/null and b/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/estop-power-home-run-pause-50ms-20260707T145810Z/snapshot-setup-estop-active.png differ diff --git a/work/working8/01-项目功能内容.md b/work/working8-暂停按钮/01-项目功能内容.md similarity index 100% rename from work/working8/01-项目功能内容.md rename to work/working8-暂停按钮/01-项目功能内容.md diff --git a/work/working8/02-项目程序开发详细步骤.md b/work/working8-暂停按钮/02-项目程序开发详细步骤.md similarity index 100% rename from work/working8/02-项目程序开发详细步骤.md rename to work/working8-暂停按钮/02-项目程序开发详细步骤.md diff --git a/work/working8/03-推进台账.md b/work/working8-暂停按钮/03-推进台账.md similarity index 100% rename from work/working8/03-推进台账.md rename to work/working8-暂停按钮/03-推进台账.md diff --git a/work/working8/04-任务矩阵.md b/work/working8-暂停按钮/04-任务矩阵.md similarity index 100% rename from work/working8/04-任务矩阵.md rename to work/working8-暂停按钮/04-任务矩阵.md diff --git a/work/working8/05-验收证据.md b/work/working8-暂停按钮/05-验收证据.md similarity index 100% rename from work/working8/05-验收证据.md rename to work/working8-暂停按钮/05-验收证据.md diff --git a/work/working8/06-决策记录.md b/work/working8-暂停按钮/06-决策记录.md similarity index 100% rename from work/working8/06-决策记录.md rename to work/working8-暂停按钮/06-决策记录.md diff --git a/work/working8/README.md b/work/working8-暂停按钮/README.md similarity index 100% rename from work/working8/README.md rename to work/working8-暂停按钮/README.md diff --git a/work/working9-执行过程按钮/01-项目功能内容.md b/work/working9-执行过程按钮/01-项目功能内容.md new file mode 100644 index 0000000..3dba7dd --- /dev/null +++ b/work/working9-执行过程按钮/01-项目功能内容.md @@ -0,0 +1,131 @@ +# 01-项目功能内容 + +## 项目目标 + +完善 `/home/mes123456/cnc_wams/wasm-port` 中 LinuxCNC WASM task/motion 执行链,使 `/home/mes123456/cnc_wams/web-rtcp-5axis-xyzbc-trt-sim-plan` 的 AXIS 风格“执行 Run”按钮按 LinuxCNC 语义工作。 + +最终用户可见目标: + +1. 未解除急停、未上电、未 Home 或未打开程序时,Run 按钮不能绕过 LinuxCNC 门禁。 +2. 满足条件后点击 Run,系统切到 `MODE_AUTO`,发送 `EMC_TASK_PLAN_RUN`,task 进入 `INTERP_READING` 或 `INTERP_WAITING`。 +3. 执行中当前行、队列深度、motion id、DRO、TCP、RTCP 位置由 task/motion status 驱动。 +4. 执行中 Pause、Resume、Step 继续走 task/motion 命令链,不直接操作前端播放状态。 +5. 执行完成、错误、急停、下电、abort 后,UI 与 task/motion status 一致,不能残留“前端 running”假状态。 + +## LinuxCNC 对标依据 + +来源文档: + +`/home/mes123456/cnc_wams/项目分析/AXIS主控制按钮调用链与WASM完善指南.md` + +核心调用链: + +```text +AXIS task_run() + -> ensure_mode(MODE_AUTO) + -> linuxcnc.command().auto(AUTO_RUN, line) + -> EMC_TASK_PLAN_RUN + -> emcTaskPlan() + -> emcTaskIssueCommand() + -> interpreter readahead + -> canonical motion commands + -> taskintf.cc + -> EMCMOT_SET_LINE / EMCMOT_SET_CIRCLE / ... + -> motion command/control cycle + -> emcStatus + -> linuxcnc.stat().poll() +``` + +Run 不是前端播放按钮。LinuxCNC 中 Run 的真实结果是 task 解释器状态、motion 队列、status echo 和 GUI 可见状态共同变化。 + +## 功能范围 + +### 必须覆盖 + +1. 急停与解除急停: + - `STATE_ESTOP` 与 `STATE_ESTOP_RESET` 的切换。 + - ESTOP 分支 abort、motion disable、IO estop on、volatile home 清理。 +2. 上电与下电: + - 只有 `STATE_ESTOP_RESET` 才能进入 `STATE_ON`。 + - `STATE_ON` 由 motion enabled 状态推导,不由前端直接写死。 +3. Home: + - Run 前必须满足 all homed 或 `no_force_homing`。 + - Home 应有 `homing -> homed` 过程态。 +4. Run: + - `MODE_AUTO`。 + - `EMC_TASK_PLAN_RUN`。 + - `interpState=READING`、`taskPaused=false`、`singleStepping=false`。 + - 程序文件已 open,或 task 能按 `emcStatus->task.file` 打开。 +5. Pause/Resume/Step: + - 作为 Run 后执行过程控制,不作为独立前端播放逻辑。 + - Pause 后 `taskPaused=true` 且 `motion.paused=true`。 + - Step 只推进一个 motion id 或一个可观测执行边界,并回到 paused。 +6. Status 投影: + - Web store 中 `taskState/mode/interpState/runState/currentLine/motionPaused/singleStepping` 来自 task/HAL status。 + +### 暂不覆盖 + +1. 完整 LinuxCNC NML 网络传输。WASM 可用内存队列替代 NML transport,但命令类型和状态语义必须保留。 +2. 完整实时 HAL。当前阶段只要求 task/motion/Home/Run/Pause/Step 相关 HAL pin 可观测。 +3. 所有 G-code 语义。G-code 到 canonical motion 应优先来自 LinuxCNC interpreter,不在 Web 层扩写解释器。 + +## 当前代码基线 + +### wasm-port 已有基础 + +关键文件: + +- `wasm-port/runtime/core/linuxcnc_wrap/linuxcnc_task_hal_wasm.cpp` +- `wasm-port/runtime/core/linuxcnc_wrap/linuxcnc_motion_runtime.c` +- `wasm-port/runtime/sdk/src/linuxcnc-task-hal.js` +- `wasm-port/tests/wasm/node/verify_task_hal_wasm.mjs` + +已具备的基础: + +- task/HAL WASM 入口已经存在。 +- Pause/Resume/Step 已有 working8 基础验证。 +- status JSON 已能输出部分 task/motion 字段。 +- Web 项目已经能加载 task-hal WASM 并把部分 status 映射到 store。 + +### 主要差距 + +1. task/HAL runtime 仍有 `phase4_minimal` 过渡实现痕迹,部分命令解析和 G-code motion 派生仍是手写逻辑。 +2. Run 的门禁需要完全对齐 `emcTaskPlan()`:不能只看 Web 自定义 `runState`。 +3. 程序 open、canonical motion plan、motion queue、current line 的来源需要收敛到 LinuxCNC interpreter/task/motion 状态。 +4. Home 状态常见简化是立即 `allHomed=true`,缺少 `homing/homeState` 过程态。 +5. Web store 仍可能存在点击 Run 后直接写 `running` 的分支,需要改为等待 WASM status 确认。 +6. 验收不能只看按钮 active,需要读取 task/HAL status、trace、截图和 Node/browser 断言。 + +## 完成定义 + +本项目完成必须同时满足: + +1. Run 前置门禁: + - ESTOP 下 Run 被拒绝。 + - ESTOP_RESET 未上电时 Run 被拒绝。 + - ON 但未 Home 且 `no_force_homing=false` 时 Run 被拒绝。 + - 未 open 程序或没有 canonical plan 时 Run 被拒绝并给出明确错误。 +2. Run 命令链: + - UI 点击 Run 后发送 `MODE_AUTO` 和 `EMC_TASK_PLAN_RUN`。 + - WASM status 显示 `task.mode=AUTO`。 + - WASM status 显示 `task.interpState=READING/WAITING`。 + - `task.taskPaused=false`、`motion.traj.singleStepping=false`。 +3. 执行状态: + - motion queue 或 canonical execution id 可观测。 + - 当前行、motion id、DRO/TCP 随 status 推进。 + - 执行完成后进入 `INTERP_IDLE` 与 `DONE` 或等价完成状态。 +4. 执行中控制: + - Pause 后 task 和 motion 双层 paused。 + - Resume 后恢复暂停前状态。 + - Step 后只推进一个边界并回到 paused。 +5. Web 集成: + - Web `runState` 是 task/HAL status 投影。 + - UI 按钮 enable/active 状态与 LinuxCNC 门禁一致。 + - 浏览器 trace 能证明 Run 后位置推进、Pause 后冻结、Resume 后继续。 + +## 非目标与风险提醒 + +1. 不把 Web frame 播放器当作 CNC task。 +2. 不在 JS 中新增 G-code 正则解释器作为长期方案。 +3. 不因为 UI 看起来 running 就关闭任务,必须有 WASM status 证据。 +4. 不把单步实现为数组下标加一,Step 必须进入 task/motion 单步状态机。 diff --git a/work/working9-执行过程按钮/02-项目程序开发详细步骤.md b/work/working9-执行过程按钮/02-项目程序开发详细步骤.md new file mode 100644 index 0000000..33d61b3 --- /dev/null +++ b/work/working9-执行过程按钮/02-项目程序开发详细步骤.md @@ -0,0 +1,227 @@ +# 02-项目程序开发详细步骤 + +## 开发原则 + +1. 以 LinuxCNC 源码语义为准:`axis -> emcmodule.cc -> emctaskmain.cc -> taskintf.cc -> motion`。 +2. Run 按钮只发送命令并渲染状态,不直接把 Web 状态改成 running。 +3. WASM wrapper 可以适配 ABI,但不能发明第二套 CNC task 状态机。 +4. 每一步都要有 Node WASM 测试、Web Node 测试或浏览器 trace 证据。 +5. 每轮结束必须更新推进台账、任务矩阵和验收证据。 + +## 步骤 1:建立 Run 状态门禁表 + +目标文件: + +- `wasm-port/runtime/core/linuxcnc_wrap/linuxcnc_task_hal_wasm.cpp` +- `wasm-port/tests/wasm/node/verify_task_state_matrix.mjs` +- `web-rtcp-5axis-xyzbc-trt-sim-plan/app/src/state/linuxcnc-task-policy.js` + +开发动作: + +1. 固化 LinuxCNC 风格枚举: + - task state:`ESTOP`、`ESTOP_RESET`、`ON` + - task mode:`MANUAL`、`AUTO`、`MDI` + - interp state:`IDLE`、`READING`、`PAUSED`、`WAITING` +2. 增加 `task_accepts_command(state, mode, interp, command)` 或等价函数。 +3. 对 `EMC_TASK_PLAN_RUN` 实现硬门禁: + - 必须 `state=ON` + - 必须 `mode=AUTO` + - 必须 `interpState=IDLE` + - 必须 homed 或 `no_force_homing` + - 必须有已打开程序或可用 canonical plan +4. Web policy 使用同一组条件做按钮 enable/disable,但最终以 WASM 返回为准。 + +验收: + +- ESTOP 下 Run 返回拒绝。 +- ESTOP_RESET 下 Run 返回拒绝。 +- ON/MANUAL 下 Run 需要先切 AUTO。 +- ON/AUTO/IDLE 且未 homed 时 Run 返回未回零错误。 +- ON/AUTO/IDLE 且 homed、有程序时 Run 被接受。 + +## 步骤 2:补齐程序 open 与 canonical plan 边界 + +目标文件: + +- `wasm-port/runtime/core/linuxcnc_wrap/linuxcnc_task_hal_wasm.cpp` +- `wasm-port/runtime/sdk/src/linuxcnc-task-hal.js` +- `web-rtcp-5axis-xyzbc-trt-sim-plan/app/src/runtime/linuxcnc-task-hal-runtime.js` +- `web-rtcp-5axis-xyzbc-trt-sim-plan/app/src/state/store.js` + +开发动作: + +1. 明确 task/HAL session 的程序来源: + - 当前 G-code 文件路径或虚拟文件名。 + - LinuxCNC interpreter canonical events。 + - motion plan id/version。 +2. 移除或隔离从 G-code 文本正则派生 motion 的 fallback。 +3. 无 canonical plan 时,Run 返回明确错误,例如 `INTERPRETER_PLAN_REQUIRED`。 +4. status JSON 输出: + - `task.file` + - `task.programOpen` + - `task.programStartLine` + - `task.planId` + - `task.errorText` + +验收: + +- 未 open 程序时 Run 不进入 running。 +- 有 canonical plan 时 Run 记录 `programStartLine`。 +- Web 能显示或记录拒绝原因,store 不伪造 running。 + +## 步骤 3:实现 Run 命令后的 task 状态变化 + +目标文件: + +- `wasm-port/runtime/core/linuxcnc_wrap/linuxcnc_task_hal_wasm.cpp` +- `wasm-port/runtime/core/linuxcnc_wrap/linuxcnc_motion_runtime.c` +- `wasm-port/tests/wasm/node/verify_task_hal_wasm.mjs` + +开发动作: + +1. `EMC_TASK_PLAN_RUN` 分支对齐 LinuxCNC: + - 清 `taskPaused` + - 清 `singleStepping` + - 清 step 相关等待状态 + - 设置 `programStartLine` + - 设置 `interpState=READING` + - 设置 `execState=EXEC` 或等价执行态 +2. 把 canonical motion events 下发到 motion runtime 队列。 +3. motion runtime 输出: + - `queueDepth` + - `activeDepth` + - `motion.id` + - `motion.programLine` + - `motion.currentVel` +4. 执行完成后 task 状态回到: + - `interpState=IDLE` + - `execState=DONE` + - `taskPaused=false` + +验收: + +- Run 后读 status 可见 `READING` 或执行中的 `WAITING`。 +- motion queue 开始消费。 +- current line 或 motion id 单调推进。 +- 完成后进入 done/idle。 + +## 步骤 4:Web store 改为 task/HAL status 投影 + +目标文件: + +- `web-rtcp-5axis-xyzbc-trt-sim-plan/app/src/state/store.js` +- `web-rtcp-5axis-xyzbc-trt-sim-plan/app/src/runtime/linuxcnc-task-hal-runtime.js` +- `web-rtcp-5axis-xyzbc-trt-sim-plan/tests/node/verify_run_feedback_loop.mjs` + +开发动作: + +1. 点击 Run 后只做: + - policy 检查 + - `taskHalRuntime.sendCommand(MODE_AUTO)` + - `taskHalRuntime.sendCommand(EMC_TASK_PLAN_RUN)` + - `runCycles/readStatus` +2. `runState` 映射规则: + - `interpState=READING/WAITING` 且未 paused -> `running` + - `interpState=PAUSED` 或 `motion.paused=true` -> `paused` + - `interpState=IDLE` 且 exec done -> `idle/done` + - 有 error -> `error` +3. 删除或隔离点击 Run 后直接写 `running` 的分支。 +4. 当前行、DRO、TCP、RTCP 显示优先使用 task/HAL status 和 kinematics runtime 的结果。 + +验收: + +- WASM 拒绝 Run 时 Web 不进入 running。 +- WASM 接受 Run 后 Web 才进入 running。 +- status loop 中断或错误时 UI 进入明确错误态,不保持假 running。 + +## 步骤 5:Home 过程态补齐为 Run 前置条件 + +目标文件: + +- `wasm-port/runtime/core/linuxcnc_wrap/linuxcnc_task_hal_wasm.cpp` +- `wasm-port/runtime/core/linuxcnc_wrap/linuxcnc_motion_runtime.c` +- `web-rtcp-5axis-xyzbc-trt-sim-plan/app/src/state/store.js` +- `web-rtcp-5axis-xyzbc-trt-sim-plan/tests/node/verify_run_feedback_loop.mjs` + +开发动作: + +1. joint status 增加: + - `homing` + - `homed` + - `homeState` +2. Home All 后不要立即只写 `allHomed=true`,应经历至少一个可观测过程态。 +3. Run 前使用 `allHomed || noForceHoming`。 +4. OFF/ESTOP 时按当前模型清理 volatile home;如果暂不能区分 volatile,必须在 status 和决策记录中标注简化。 + +验收: + +- 未 homed Run 被拒绝。 +- Home 过程中 Run 被拒绝。 +- Home 完成后 Run 可进入执行。 + +## 步骤 6:执行过程 Pause/Resume/Step 回归 + +目标文件: + +- `wasm-port/tests/wasm/node/verify_task_hal_wasm.mjs` +- `web-rtcp-5axis-xyzbc-trt-sim-plan/tests/node/verify_run_feedback_loop.mjs` +- `web-rtcp-5axis-xyzbc-trt-sim-plan/tools/trace-pause-position-json.mjs` +- `web-rtcp-5axis-xyzbc-trt-sim-plan/tools/verify-estop-power-home-run-pause-50ms.mjs` + +开发动作: + +1. 在 Run 成功后执行 Pause,断言: + - `task.interpState=PAUSED` + - `task.taskPaused=true` + - `motion.paused=true` +2. Resume 后断言: + - 恢复 `interpResumeState` + - `taskPaused=false` + - `motion.paused=false` +3. Step 后断言: + - `singleStepping=true` 或 step 过程字段可观测 + - 只推进一个 motion id/程序行 + - 回到 paused + +验收: + +- working8 已有暂停证据继续通过。 +- working9 新增 Run 前置、Run 后执行推进、Run 中暂停/恢复/单步证据。 + +## 步骤 7:构建与回归命令 + +WASM 推荐命令: + +```bash +cd /home/mes123456/cnc_wams/wasm-port +./tools/build_task_hal_wasm.sh +node tests/wasm/node/verify_task_hal_wasm.mjs +node tests/wasm/node/verify_task_state_matrix.mjs +``` + +Web 推荐命令: + +```bash +cd /home/mes123456/cnc_wams/web-rtcp-5axis-xyzbc-trt-sim-plan +npm --prefix app run build +node tests/node/verify_run_feedback_loop.mjs +APP_URL_PATH=/web-rtcp-5axis-xyzbc-trt-sim-plan/app/dist/index.html node tools/trace-pause-position-json.mjs +RUN_STABLE_BEFORE_FIRST_PAUSE_MS=3000 node tools/verify-estop-power-home-run-pause-50ms.mjs +``` + +预期证据关键词: + +- `linuxcnc_task_runtime_smoke=ok` +- `task_state_matrix=ok` +- `run_feedback_status_loop_smoke=ok` +- `pause_position_status=passed-position-frozen` +- `verification_status=passed` + +## 步骤 8:记录与关闭 + +每完成一个编号任务: + +1. 更新 `03-推进台账.md`。 +2. 更新 `04-任务矩阵.md` 状态。 +3. 把命令、输出摘要、trace 路径、截图目录写入 `05-验收证据.md`。 +4. 如果改变技术方向,追加 `06-决策记录.md`。 diff --git a/work/working9-执行过程按钮/03-推进台账.md b/work/working9-执行过程按钮/03-推进台账.md new file mode 100644 index 0000000..1ed2703 --- /dev/null +++ b/work/working9-执行过程按钮/03-推进台账.md @@ -0,0 +1,56 @@ +# 03-推进台账 + +## 记录规则 + +每轮推进结束后追加一条记录,格式固定如下: + +```text +## YYYY-MM-DD HH:MM EDT - 第 N 轮 + +### 本轮目标 + +### 本轮做了什么 + +### 改了哪些文件 + +### 验证了什么 + +### 结果与证据 + +### 下一步 +``` + +## 2026-07-07 16:42 EDT - 第 0 轮:文档初始化 + +### 本轮目标 + +按 `/home/mes123456/cnc_wams/项目分析/AXIS主控制按钮调用链与WASM完善指南.md`,在 `/home/mes123456/cnc_wams/work/working9-执行过程按钮` 建立后续推进所需文档体系。 + +### 本轮做了什么 + +1. 读取 AXIS 主控制按钮调用链与 WASM 完善指南,确认 working9 应以 Run 执行按钮为主线,同时覆盖急停、上电、Home、Pause、Resume、Step 的前置和运行期状态链。 +2. 参考 `work/working8-暂停按钮` 的文档组织方式,建立 working9 文档索引、功能内容、开发步骤、推进台账、任务矩阵、验收证据、决策记录。 +3. 将任务编号统一为 `W9-xxx`,便于后续按矩阵继续推进。 + +### 改了哪些文件 + +- `work/working9-执行过程按钮/README.md` +- `work/working9-执行过程按钮/01-项目功能内容.md` +- `work/working9-执行过程按钮/02-项目程序开发详细步骤.md` +- `work/working9-执行过程按钮/03-推进台账.md` +- `work/working9-执行过程按钮/04-任务矩阵.md` +- `work/working9-执行过程按钮/05-验收证据.md` +- `work/working9-执行过程按钮/06-决策记录.md` + +### 验证了什么 + +本轮只创建推进文档,未修改 `wasm-port` 或 Web 项目代码。验证重点是文件是否齐全、索引是否能覆盖后续继续推进。 + +### 结果与证据 + +- working9 文档体系已创建。 +- 任务矩阵已列出 Run 门禁、程序 open、task 状态、Web status 投影、Home 前置、Pause/Resume/Step 回归、浏览器验收等后续任务。 + +### 下一步 + +从 `04-任务矩阵.md` 的 `W9-001` 开始,先补 Run 状态门禁矩阵和 WASM Node 验证。 diff --git a/work/working9-执行过程按钮/04-任务矩阵.md b/work/working9-执行过程按钮/04-任务矩阵.md new file mode 100644 index 0000000..3b06d66 --- /dev/null +++ b/work/working9-执行过程按钮/04-任务矩阵.md @@ -0,0 +1,34 @@ +# 04-任务矩阵 + +## 状态定义 + +- `待办`:尚未修改代码。 +- `进行中`:已有部分修改或验证,但未达到验收标准。 +- `已完成`:代码、测试、证据、台账均完成。 +- `阻塞`:需要外部输入或依赖。 + +## 任务列表 + +| 任务编号 | 状态 | 任务 | 目标文件 | 验收标准 | +|---|---|---|---|---| +| W9-000 | 已完成 | 初始化 working9 推进文档 | `work/working9-执行过程按钮/*` | README、功能内容、开发步骤、推进台账、任务矩阵、验收证据、决策记录均已创建。 | +| W9-001 | 待办 | 建立 Run 状态门禁矩阵 | `wasm-port/runtime/core/linuxcnc_wrap/linuxcnc_task_hal_wasm.cpp`、`wasm-port/tests/wasm/node/verify_task_state_matrix.mjs` | ESTOP、ESTOP_RESET、ON/MANUAL、ON/AUTO/IDLE、未 homed、有程序等状态组合均有明确接受/拒绝断言。 | +| W9-002 | 待办 | Web task policy 对齐 Run 门禁 | `web-rtcp-5axis-xyzbc-trt-sim-plan/app/src/state/linuxcnc-task-policy.js` | Run enable/disable 与 LinuxCNC 条件一致;最终仍以 WASM 拒绝/接受为准。 | +| W9-003 | 待办 | 明确 program open 与 canonical plan 边界 | `wasm-port/runtime/core/linuxcnc_wrap/linuxcnc_task_hal_wasm.cpp`、`wasm-port/runtime/sdk/src/linuxcnc-task-hal.js` | 未 open 程序或无 canonical plan 时 Run 返回明确错误,不能 fallback 为 JS/G-code 正则执行。 | +| W9-004 | 待办 | 实现 `EMC_TASK_PLAN_RUN` 状态转换 | `wasm-port/runtime/core/linuxcnc_wrap/linuxcnc_task_hal_wasm.cpp` | Run 后清 pause/step,设置 `interpState=READING`、`taskPaused=false`、`singleStepping=false`、`programStartLine`。 | +| W9-005 | 待办 | motion runtime 暴露执行推进字段 | `wasm-port/runtime/core/linuxcnc_wrap/linuxcnc_motion_runtime.c` | status 输出 `queueDepth`、`activeDepth`、`motion.id`、`programLine`、`currentVel`,执行中可观测推进。 | +| W9-006 | 待办 | Web store 改为 task/HAL status 投影 | `web-rtcp-5axis-xyzbc-trt-sim-plan/app/src/state/store.js` | Run 被 WASM 拒绝时 Web 不进入 running;WASM status 进入 reading/waiting 后 Web 才显示 running。 | +| W9-007 | 待办 | Home 过程态作为 Run 前置条件 | `wasm-port/runtime/core/linuxcnc_wrap/linuxcnc_task_hal_wasm.cpp`、`web-rtcp-5axis-xyzbc-trt-sim-plan/app/src/state/store.js` | 未 homed 或 homing 中 Run 被拒绝;Home 完成后 Run 可执行。 | +| W9-008 | 待办 | 执行中 Pause/Resume/Step 状态回归 | `wasm-port/tests/wasm/node/verify_task_hal_wasm.mjs`、`web-rtcp-5axis-xyzbc-trt-sim-plan/tests/node/verify_run_feedback_loop.mjs` | Run 后 Pause/Resume/Step 均有 task/motion status 断言,不能只看 UI 状态。 | +| W9-009 | 待办 | 浏览器 Run 过程 trace 验收 | `web-rtcp-5axis-xyzbc-trt-sim-plan/tools/trace-pause-position-json.mjs`、`tools/verify-estop-power-home-run-pause-50ms.mjs` | trace 证明 Run 后位置推进,Pause 后冻结,Resume 后继续;截图 manifest 有路径记录。 | +| W9-010 | 待办 | 构建与 dist 同步 | `web-rtcp-5axis-xyzbc-trt-sim-plan/app/dist`、`wasm-port/build/wasm/task-hal` | WASM 与 Web dist 使用最新实现;hash 或构建日志记录到验收证据。 | +| W9-011 | 待办 | 更新文档与证据闭环 | `work/working9-执行过程按钮/03-推进台账.md`、`05-验收证据.md`、`06-决策记录.md` | 每个完成任务都有命令、输出摘要、路径证据和必要决策记录。 | + +## 防重复规则 + +1. 前端 `runState=running` 通过不等于 `W9-004` 完成。 +2. 按钮可点击不等于 Run 门禁完成,必须有 WASM 接受/拒绝矩阵。 +3. Run 后当前行变化不等于 motion runtime 完成,必须有 queue/id/programLine/status 字段证据。 +4. 未记录 canonical plan 来源,不得关闭 `W9-003`。 +5. 未记录 trace 或截图路径,不得关闭浏览器验收任务。 +6. Pause/Resume/Step 如果只改 UI 状态,不得计入执行过程控制完成。 diff --git a/work/working9-执行过程按钮/05-验收证据.md b/work/working9-执行过程按钮/05-验收证据.md new file mode 100644 index 0000000..2361bee --- /dev/null +++ b/work/working9-执行过程按钮/05-验收证据.md @@ -0,0 +1,68 @@ +# 05-验收证据 + +## 记录规则 + +每次验证后追加证据。建议格式: + +```text +## YYYY-MM-DD HH:MM EDT - 任务 W9-xxx + +### 命令 + +### 输出摘要 + +### 页面/截图/trace/report + +### 结论 +``` + +证据可以包括: + +- 命令和关键输出。 +- 页面 URL。 +- Playwright trace 路径。 +- 截图目录。 +- `manifest.json`。 +- `job_id`、`report_id`。 +- PDF 或报告文件。 +- WASM hash、dist hash。 + +## 2026-07-07 16:42 EDT - 任务 W9-000 + +### 命令 + +```bash +sed -n '1,260p' '项目分析/AXIS主控制按钮调用链与WASM完善指南.md' +sed -n '261,620p' '项目分析/AXIS主控制按钮调用链与WASM完善指南.md' +sed -n '621,980p' '项目分析/AXIS主控制按钮调用链与WASM完善指南.md' +find 'work/working9-执行过程按钮' -maxdepth 1 -type f -print | sort +``` + +### 输出摘要 + +- 已读取 AXIS 主控制按钮调用链与 WASM 完善指南。 +- 已确认工作目录为 `/home/mes123456/cnc_wams/work/working9-执行过程按钮`。 +- 已创建 working9 文档体系。 + +### 页面/截图/trace/report + +本轮为文档初始化,无页面、截图、trace、job_id、report_id 或 PDF。 + +### 结论 + +`W9-000` 已完成。后续从 `W9-001` 开始进入代码和验证阶段。 + +## 待补证据清单 + +| 任务编号 | 必需证据 | +|---|---| +| W9-001 | `verify_task_state_matrix.mjs` 命令和输出,至少覆盖 Run 接受/拒绝矩阵。 | +| W9-002 | Web policy Node 测试输出,证明按钮门禁与 LinuxCNC 条件一致。 | +| W9-003 | program open/canonical plan 测试输出,证明无 plan 时拒绝 Run。 | +| W9-004 | WASM status 输出片段,证明 Run 后 `interpState=READING`。 | +| W9-005 | motion status 输出片段,证明 queue/id/programLine 推进。 | +| W9-006 | store 测试输出,证明 Web running 来自 WASM status。 | +| W9-007 | Home 过程态测试输出,证明 homing 中 Run 被拒绝。 | +| W9-008 | Pause/Resume/Step 回归输出。 | +| W9-009 | Playwright trace、截图目录、manifest 路径。 | +| W9-010 | build 命令输出、WASM/dist hash 或文件时间戳。 | diff --git a/work/working9-执行过程按钮/06-决策记录.md b/work/working9-执行过程按钮/06-决策记录.md new file mode 100644 index 0000000..97a3edf --- /dev/null +++ b/work/working9-执行过程按钮/06-决策记录.md @@ -0,0 +1,43 @@ +# 06-决策记录 + +## 记录规则 + +当出现会影响后续实现路线的技术取舍时追加记录。建议格式: + +```text +## DR-W9-xxx - 标题 + +- 日期: +- 状态: +- 背景: +- 决策: +- 理由: +- 后续影响: +``` + +## DR-W9-001 - working9 以 Run 为主线但覆盖完整控制链 + +- 日期:2026-07-07 +- 状态:已采纳 +- 背景:用户目录名为 `working9-执行过程按钮`,来源文档覆盖 AXIS 主控制按钮,包括急停、上电、Home、执行、暂停、单步。 +- 决策:working9 文档以“执行 Run 按钮”为主线,同时把急停、上电、Home、Pause、Resume、Step 纳入前置条件和执行过程控制。 +- 理由:LinuxCNC 中 Run 不能脱离 `STATE_ON`、`MODE_AUTO`、homed、program open、pause/step 状态机单独成立。只写 Run 会导致后续实现继续用 Web `runState` 绕过真实 task/motion 门禁。 +- 后续影响:任务矩阵中的 Run 验收必须包含前置链和运行期链;不能只验证点击 Run 后前端开始播放。 + +## DR-W9-002 - Web `runState` 只能作为投影状态 + +- 日期:2026-07-07 +- 状态:已采纳 +- 背景:AXIS GUI 通过 `linuxcnc.stat().poll()` 读取 `emcStatus`,按钮本身不保存真实 task/motion 状态。 +- 决策:Web 中 `runState`、按钮 active、当前行等 UI 状态应由 task/HAL WASM status 投影生成。 +- 理由:如果点击 Run 后直接写 `runState=running`,会掩盖 ESTOP、未上电、未 homed、无 program plan 等拒绝条件,形成假执行状态。 +- 后续影响:后续代码修改需要优先删除或隔离直接写 running/paused/done 的分支,改为等待 WASM status 同步。 + +## DR-W9-003 - G-code 到 motion 不再扩展 JS 正则 fallback + +- 日期:2026-07-07 +- 状态:已采纳 +- 背景:来源指南指出 `wasm-port` 应复用 LinuxCNC source,当前从 G-code 文本中用简单规则派生 motion 属于语义漂移风险。 +- 决策:Run 所需 motion plan 应来自 LinuxCNC interpreter canonical output 或受控 WASM 适配层。没有 plan 时返回明确错误,不把 JS 正则解析作为长期执行路径。 +- 理由:Run 按钮的验收对象是 LinuxCNC task/interpreter/motion 链,不是 Web 播放 G-code 文本。 +- 后续影响:`W9-003` 必须明确 program open 与 canonical plan 边界;关闭任务前要有无 plan 拒绝 Run 的测试证据。 diff --git a/work/working9-执行过程按钮/README.md b/work/working9-执行过程按钮/README.md new file mode 100644 index 0000000..77abc55 --- /dev/null +++ b/work/working9-执行过程按钮/README.md @@ -0,0 +1,47 @@ +# working9 README 索引 + +## 主题 + +基于 `/home/mes123456/cnc_wams/项目分析/AXIS主控制按钮调用链与WASM完善指南.md`,推进 AXIS 风格“执行 Run”按钮及其前置/运行期控制链在 `wasm-port` 和 `web-rtcp-5axis-xyzbc-trt-sim-plan` 中的完善。 + +本工作目录以“执行过程按钮”为主线,但 Run 不是孤立按钮。LinuxCNC 中 Run 是否可用、是否能继续、是否能暂停/单步,依赖以下状态链: + +```text +ESTOP/ESTOP_RESET + -> Power ON + -> Manual Home + -> AUTO Run + -> Reading/Waiting + -> Pause/Resume/Step + -> Done/Error/Abort +``` + +## 文档索引 + +| 文件 | 用途 | +|---|---| +| `01-项目功能内容.md` | 定义执行按钮功能范围、LinuxCNC 对标语义、当前差距和完成定义。 | +| `02-项目程序开发详细步骤.md` | 按 `wasm-port`、Web store、UI、测试证据列出可执行开发步骤。 | +| `03-推进台账.md` | 记录每轮做了什么、改了哪些文件、验证了什么、下一步是什么。 | +| `04-任务矩阵.md` | 管理全部任务编号、状态、依赖和验收标准,防止重复推进。 | +| `05-验收证据.md` | 汇总命令、页面、job_id、report_id、PDF、截图、trace 等证据。 | +| `06-决策记录.md` | 固化关键技术决策,避免后续重复争论同一问题。 | + +## 当前推进入口 + +1. 先读 `01-项目功能内容.md`,确认 Run 的完成定义不是“前端开始播放”,而是 task/motion 状态进入 LinuxCNC 风格执行链。 +2. 按 `04-任务矩阵.md` 从 `W9-001` 开始推进。 +3. 每完成一个任务,把命令、输出摘要、trace、截图目录追加到 `05-验收证据.md`。 +4. 每轮结束更新 `03-推进台账.md`。 +5. 如果改变状态源、门禁策略、fallback 方案,先追加 `06-决策记录.md`。 + +## 当前结论 + +`AXIS主控制按钮调用链与WASM完善指南.md` 的核心结论是:AXIS 按钮不是直接改 UI 状态,而是通过 `linuxcnc.command()` 发送 `EMC_TASK_*` 或 `EMC_JOINT_*` 命令,经 task 层门禁、motion 层执行,再由 `emcStatus` 反向驱动 UI。 + +working9 后续推进必须围绕这个结论: + +- Run 必须发送 `EMC_TASK_PLAN_RUN`,并等待 task status 进入 `INTERP_READING/WAITING`。 +- Run 前必须满足 `STATE_ON + MODE_AUTO + homed/no_force_homing + program opened`。 +- Web 的 `runState` 只能是 WASM task/motion status 的投影,不能作为真实执行状态源。 +- Pause、Resume、Step 必须作为执行过程的后续命令,不能退化为前端播放暂停或 frameIndex 跳转。 diff --git a/备忘/16备用暂停按钮实现详细过程.txt b/备忘/16备用暂停按钮实现详细过程.txt index c64d7ac..12e91f2 100644 --- a/备忘/16备用暂停按钮实现详细过程.txt +++ b/备忘/16备用暂停按钮实现详细过程.txt @@ -24,7 +24,7 @@ wasm-port 已经有 linuxcnc_task_hal_wasm.cpp、linuxcnc_motion_runtime.c 和 T 06-决策记录:为什么这么做,后续变更时不反复争论同一个问题 另加 README 索引,便于后续按任务矩阵继续推进。 - +只让 pause/run/jog 采用 WASM motion 轴。 diff --git a/备忘/17备忘主要执行过程按钮逻辑.txt b/备忘/17备忘主要执行过程按钮逻辑.txt new file mode 100644 index 0000000..c6c01de --- /dev/null +++ b/备忘/17备忘主要执行过程按钮逻辑.txt @@ -0,0 +1,62 @@ +1、分析“/home/mes123456/cnc_wams/linuxcnc” +源程序的AXIS 主界面的“急停、上电、Home、执行、暂停、单步执行”的详细调用链条和状态机制; +2、包括c++的task、motion、状态记录方式,“急停、上电、Home、执行、暂停、单步执行”的详细调用链条和状态机制; +3、linuxcnc系统的c++都是如何实现“急停、上电、Home、执行、暂停、单步执行”的功能的详细调用链条和状态机制; +4、每个按钮的可以执行的先觉条件,每个按钮执行后,如何记录当前状态,详细分析“急停、上电、Home、执行、暂停、单步执行”的详细调用链条和状态机制; +5、指导完善“/home/mes123456/cnc_wams/wasm-port”的linuxcnc的wasm +6、指导完善“/home/mes123456/cnc_wams/web-rtcp-5axis-xyzbc-trt-sim-plan”程序; +7、上面的分析结果,写入单独的文档中,指导完善项目。 + +我会把 working9 定义为“执行 Run 按钮主线”,但文档会保留急停、上电、Home、暂停、单步作为 Run 的前置与运行期状态链,因为这些状态直接决定执行按钮能否按 LinuxCNC 语义工作。 + + + + + + + + +我发现 wasm-port/runtime/core/linuxcnc_wrap/linuxcnc_task_hal_wasm.cpp 仍是“phase4_minimal”任务运行时,存在手写 JSON 解析和 G-code 行派生 motion 的过渡逻辑。文档会明确指出这是当前最大语义漂移风险,并给出迁移到 vendored task/motion 状态机的分层步骤。 + + +我会先梳理仓库结构和关键入口,重点找 AXIS UI、NML command/status、task/motion 相关实现,再把分析写成独立中文文档并按要求追加过程日志。 + +AXIS 层已确认:按钮本身只做少量 UI 前置判断,真正状态跳转通过 linuxcnc.command() 写 NML 命令。下面我会追 emctaskmain 如何按解释器状态接收/排队/拒绝这些命令,以及 motion 如何接收 task 下发的实时命令。 + +task 层的核心状态已经清楚:task.state/mode/interpState/task_paused 是 GUI 可见状态,stepping/steppingWait 和 motion.traj.single_stepping 管单步。接下来补 motion 侧 EMCMOT_ENABLE/DISABLE/PAUSE/RESUME、homing 状态位和状态发布结构。 + +状态发布路径也已定位:task 主循环每周期读 motion 共享状态,合成 emcStatus,Python stat.poll() 直接暴露这些字段。现在我会快速检查两个目标项目当前结构和已有按钮实现,再把源码链路和改进清单写进独立文档。 + +目标项目已有 task/HAL WASM、Web store 和按钮验证基础,文档会把下一步重点放在“把现在的 JS 状态策略压缩成 LinuxCNC 状态机镜像、补齐 status 字段与命令队列语义”,而不是建议重写 CNC 语义。 + + + + + + +初步线索确认:AXIS 按钮入口在 src/emc/usr_intf/axis/scripts/axis.py 和 share/axis/tcl/axis.tcl,Python 扩展把按钮动作转换成 NML 命令,emctaskmain.cc 的状态机决定命令是否可执行。现在我会读关键函数的原始代码段并记录行号。 + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/项目分析/AXIS主控制按钮调用链与WASM完善指南.md b/项目分析/AXIS主控制按钮调用链与WASM完善指南.md new file mode 100644 index 0000000..76b809a --- /dev/null +++ b/项目分析/AXIS主控制按钮调用链与WASM完善指南.md @@ -0,0 +1,929 @@ +# AXIS 主控制按钮调用链与 WASM 完善指南 + +生成时间:2026-07-07 + +分析范围: + +- LinuxCNC 源码:`/home/mes123456/cnc_wams/linuxcnc` +- WASM 迁移工程:`/home/mes123456/cnc_wams/wasm-port` +- Web 5 轴仿真工程:`/home/mes123456/cnc_wams/web-rtcp-5axis-xyzbc-trt-sim-plan` + +本文重点分析 AXIS 主界面的“急停、上电、Home、执行、暂停、单步执行”的调用链、状态机制、按钮前置条件,以及对 WASM/Web 项目的完善建议。 + +## 1. 总体架构结论 + +LinuxCNC 中 AXIS 按钮不是直接操作运动控制,而是走统一命令/状态通道: + +```text +AXIS Python/Tk 按钮 + -> linuxcnc.command() Python C 扩展 + -> NML 命令对象 EMC_TASK_*/EMC_JOINT_* + -> emcCommand NML 通道 + -> task 主循环 emcTaskPlan()/emcTaskIssueCommand() + -> taskintf.cc 转为 EMCMOT_* motion 命令 + -> motion 实时侧 command.c/control.c/homing.c + -> motion/status + task/status 合成为 emcStatus + -> linuxcnc.stat().poll() 供 AXIS 刷新 UI +``` + +核心状态不是由按钮自行保存,而是由 `emcStatus` 聚合: + +- `emcStatus->task.state`:任务状态,GUI 显示为 `STATE_ESTOP`、`STATE_ESTOP_RESET`、`STATE_ON` 等。 +- `emcStatus->task.mode`:任务模式,`MODE_MANUAL`、`MODE_AUTO`、`MODE_MDI`。 +- `emcStatus->task.interpState`:解释器状态,`INTERP_IDLE`、`INTERP_READING`、`INTERP_PAUSED`、`INTERP_WAITING`。 +- `emcStatus->task.task_paused`:task 层暂停标志。 +- `emcStatus->motion.traj.paused`:motion 轨迹规划器暂停标志。 +- `emcStatus->motion.traj.single_stepping`:task/GUI 可见的单步执行标志。 +- `emcStatus->motion.joint[n].homed`:每个 joint 的回零状态。 +- `emcStatus->motion.traj.enabled`:motion 是否上使能,用于推导 task 是否 `STATE_ON`。 + +需要特别注意:LinuxCNC 的 task 层主要是 C++,motion 层主要是 C。用户所说的 C++ 实现,在源码中实际跨越 `emctask*.cc`、`taskintf.cc` 和 motion 的 `command.c`、`homing.c`。 + +## 2. AXIS UI 按钮入口 + +AXIS 主界面位于: + +- `linuxcnc/bin/axis` + +关键辅助函数: + +```python +def manual_ok(do_poll=True): + if do_poll: s.poll() + if s.task_state != linuxcnc.STATE_ON: return False + return s.interp_state == linuxcnc.INTERP_IDLE or ( + s.task_mode == linuxcnc.MODE_MDI and + s.queued_mdi_commands < vars.max_queued_mdi_commands.get() + ) + +def ensure_mode(m, *p): + s.poll() + if s.task_mode == m or s.task_mode in p: return True + c.mode(m) + c.wait_complete() + s.poll() + return True +``` + +源码位置:`linuxcnc/bin/axis:986-1015`。 + +这说明 AXIS 侧前置条件分两层: + +1. UI 层用 `s.poll()` 读当前状态,避免明显非法操作。 +2. task/motion 层仍会再次校验,非法命令会拒绝或报错。 + +## 3. Python C 扩展到 NML 命令 + +AXIS 使用 `linuxcnc.command()`。该对象由 `linuxcnc/src/emc/usr_intf/axis/extensions/emcmodule.cc` 暴露,关键映射如下: + +| AXIS 调用 | C 扩展函数 | NML 命令 | +| --- | --- | --- | +| `c.state(STATE_*)` | `state()` | `EMC_TASK_SET_STATE` | +| `c.mode(MODE_*)` | `mode()` | `EMC_TASK_SET_MODE` | +| `c.home(joint)` | `home()` | `EMC_JOINT_HOME` | +| `c.auto(AUTO_RUN, line)` | `emcauto()` | `EMC_TASK_PLAN_RUN` | +| `c.auto(AUTO_PAUSE)` | `emcauto()` | `EMC_TASK_PLAN_PAUSE` | +| `c.auto(AUTO_RESUME)` | `emcauto()` | `EMC_TASK_PLAN_RESUME` | +| `c.auto(AUTO_STEP)` | `emcauto()` | `EMC_TASK_PLAN_STEP` | + +源码依据: + +- `mode()` 创建 `EMC_TASK_SET_MODE`:`linuxcnc/src/emc/usr_intf/axis/extensions/emcmodule.cc:1691-1705` +- `state()` 创建 `EMC_TASK_SET_STATE`:`linuxcnc/src/emc/usr_intf/axis/extensions/emcmodule.cc:1815-1829` +- `home()` 创建 `EMC_JOINT_HOME`:`linuxcnc/src/emc/usr_intf/axis/extensions/emcmodule.cc:1941-1945` +- `emcauto()` 分发 `RUN/PAUSE/RESUME/STEP`:`linuxcnc/src/emc/usr_intf/axis/extensions/emcmodule.cc:2093-2116` + +## 4. task 主循环的命令调度 + +task 主循环在 `linuxcnc/src/emc/task/emctaskmain.cc`: + +```text +emcCommandBuffer->read() + -> emcTaskPlan() + -> emcTaskExecute() + -> emcMotionUpdate(&emcStatus->motion) + -> emcTaskUpdate(&emcStatus->task) + -> 写 emcStatus 顶层 command/status/echo_serial_number +``` + +源码位置:`linuxcnc/src/emc/task/emctaskmain.cc:3301-3478`。 + +`emcTaskPlan()` 按三类状态进行门禁: + +1. `task.state`:`OFF`、`ESTOP`、`ESTOP_RESET`、`ON` +2. `task.mode`:`MANUAL`、`AUTO`、`MDI` +3. `task.interpState`:`IDLE`、`READING`、`PAUSED`、`WAITING` + +因此,AXIS UI 的按钮条件必须与 `emcTaskPlan()` 的状态表一致,不能只看 `runState` 这类 Web 自定义状态。 + +## 5. 急停按钮 + +### 5.1 AXIS UI 调用链 + +源码:`linuxcnc/bin/axis:2243-2248` + +```python +def estop_clicked(event=None): + s.poll() + if s.task_state == linuxcnc.STATE_ESTOP: + c.state(linuxcnc.STATE_ESTOP_RESET) + else: + c.state(linuxcnc.STATE_ESTOP) +``` + +按钮语义: + +- 当前是 `STATE_ESTOP`:发送 `STATE_ESTOP_RESET`,表示解除急停。 +- 其他任意状态:发送 `STATE_ESTOP`,进入急停。 + +### 5.2 NML/task 调用链 + +```text +c.state(STATE_ESTOP or STATE_ESTOP_RESET) + -> emcmodule.cc state() + -> EMC_TASK_SET_STATE + -> emcTaskPlan() + -> emcTaskIssueCommand() + -> emcTaskSetState() +``` + +`EMC_TASK_SET_STATE` 被 task 作为 immediate command 接收: + +- 非 ON 状态也允许接收:`emctaskmain.cc:795-829` +- ON/MANUAL 允许:`emctaskmain.cc:897-956` +- ON/AUTO/IDLE 允许:`emctaskmain.cc:1026-1075` +- ON/AUTO/READING 允许:`emctaskmain.cc:1137-1174` +- ON/AUTO/PAUSED 允许:`emctaskmain.cc:1206-1251` + +### 5.3 C++ task 状态处理 + +`emcTaskSetState(ESTOP)` 源码:`linuxcnc/src/emc/task/emctask.cc:353-365` + +执行内容: + +- `emcMotionAbort()`:中止 motion。 +- `emcSpindleAbort()`:中止主轴。 +- `emcAuxEstopOn()`:IO 急停输出置位。 +- `emcTrajDisable()`:下发 motion disable。 +- 关闭 flood coolant。 +- `emcTaskAbort()`:清解释器队列、清 pause/step 状态。 +- `emcIoAbort(TASK_STATE_ESTOP)`。 +- `emcJointUnhome(-2)`:清除 `VOLATILE_HOME` joint 的 homed。 +- `emcTaskPlanSynch()`:同步解释器。 + +`emcTaskSetState(ESTOP_RESET)` 源码:`linuxcnc/src/emc/task/emctask.cc:342-350` + +执行内容: + +- `emcAuxEstopOff()`:解除 IO 急停。 +- `emcTaskAbort()`:清程序运行状态。 +- `emcIoAbort(TASK_STATE_ESTOP_RESET)`。 +- `emcSpindleAbort()`。 +- `emcTaskPlanSynch()`。 + +### 5.4 状态记录方式 + +task 并不简单把 `task.state = ESTOP` 固定写死,而是周期性通过 `determineState()` 从 IO 和 motion 推导: + +源码:`linuxcnc/src/emc/task/emctask.cc:418-428` + +规则: + +| IO 急停 | motion enabled | 推导状态 | +| --- | --- | --- | +| true | 任意 | `ESTOP` | +| false | false | `ESTOP_RESET` | +| false | true | `ON` | + +`emcTaskUpdate()` 每周期写入 `stat->state`:`linuxcnc/src/emc/task/emctask.cc:688-699`。 + +这意味着 Web/WASM 中不能只维护一个 `estopActive` 布尔值;应该同时维护: + +- IO estop 状态; +- motion enable 状态; +- task 推导状态; +- volatile home 清除动作。 + +## 6. 上电/下电按钮 + +### 6.1 AXIS UI 调用链 + +源码:`linuxcnc/bin/axis:2250-2260` + +```python +def onoff_clicked(event=None): + s.poll() + if s.task_state == linuxcnc.STATE_ESTOP_RESET: + c.state(linuxcnc.STATE_ON) + ... + else: + c.state(linuxcnc.STATE_OFF) +``` + +按钮语义: + +- 只有 `STATE_ESTOP_RESET` 才能上电。 +- 其他状态一律发送 `STATE_OFF`。 +- 因此 `STATE_ESTOP` 下点电源不是“上电”,而是进入 OFF/保持不可上电语义;必须先通过急停按钮解除急停到 `ESTOP_RESET`。 + +### 6.2 task 调用链 + +```text +c.state(STATE_ON/OFF) + -> EMC_TASK_SET_STATE + -> emcTaskSetState(ON/OFF) +``` + +`emcTaskSetState(ON)` 源码:`linuxcnc/src/emc/task/emctask.cc:336-340` + +执行内容: + +- `emcTrajEnable()`。 +- 关闭 flood coolant。 + +`emcTrajEnable()` 源码:`linuxcnc/src/emc/task/taskintf.cc:1396-1400` + +```text +emcTrajEnable() + -> emcmotCommand.command = EMCMOT_ENABLE + -> usrmotWriteEmcmotCommand() +``` + +motion 侧 `EMCMOT_ENABLE` 源码:`linuxcnc/src/emc/motion/command.c:1370-1384` + +执行内容: + +- 如果 HAL `motion.enable` 输入为 false,报错:`can't enable motion, enable input is false`。 +- 否则设置 `emcmotInternal->enabling = 1`,实际使能在 motion 控制周期中完成。 + +`emcTaskSetState(OFF)` 源码:`linuxcnc/src/emc/task/emctask.cc:323-333` + +执行内容: + +- `emcMotionAbort()`。 +- `emcSpindleAbort()`。 +- `emcTrajDisable()`。 +- `emcIoAbort(TASK_STATE_OFF)`。 +- `emcTaskAbort()`。 +- `emcJointUnhome(-2)` 清 volatile home。 +- `emcTaskPlanSynch()`。 + +motion 侧 `EMCMOT_DISABLE` 源码:`linuxcnc/src/emc/motion/command.c:1357-1368` + +执行内容: + +- 设置 `emcmotInternal->enabling = 0`。 +- 对 inverse-only kinematics,还会退出 teleop/coord。 + +### 6.3 状态记录方式 + +上电后并不是由 task 直接写 `STATE_ON`,而是 motion 报告 enabled 后,`determineState()` 推导为 `ON`。 + +motion 状态更新路径: + +```text +motion command/control 周期更新 emcmotStatus.motionFlag + -> taskintf.cc emcMotionUpdate() + -> emcTrajUpdate() + -> stat->traj.enabled + -> emcTaskUpdate() + -> determineState() +``` + +关键源码: + +- `emcMotionUpdate()` 读取 `emcmotStatus`:`linuxcnc/src/emc/task/taskintf.cc:2057-2102` +- `emcTrajUpdate()` 写 `stat->enabled`:`linuxcnc/src/emc/task/taskintf.cc:1639-1652` +- `determineState()` 推导状态:`linuxcnc/src/emc/task/emctask.cc:418-428` + +## 7. Home 按钮 + +### 7.1 AXIS UI 调用链 + +Home All 源码:`linuxcnc/bin/axis:2732-2740` + +```python +def home_all_joints(event=None): + if not manual_ok(): return + ensure_mode(linuxcnc.MODE_MANUAL) + ... + go_home(-1) +``` + +单 joint Home 源码:`linuxcnc/bin/axis:2747-2767` + +关键条件: + +- `manual_ok()` 必须为真,即 machine 为 `STATE_ON`,解释器 idle 或 MDI 队列可接受。 +- 切到 `MODE_MANUAL`。 +- 已 homed 时弹窗确认是否 re-home。 +- 非 identity kinematics 下,单轴/单 joint 选择有额外限制。 +- 最终 `go_home(num)` 调 `c.home(num)`。 + +### 7.2 NML/task/motion 调用链 + +```text +c.home(-1 或 joint) + -> emcmodule.cc home() + -> EMC_JOINT_HOME + -> emcTaskPlan() + -> emcTaskIssueCommand() + -> emcJointHome() + -> EMCMOT_JOINT_HOME + -> motion command.c + -> do_home_joint() + -> homing.c 状态机 +``` + +`EMC_JOINT_HOME` 只在 ON/MANUAL 中直接允许:`linuxcnc/src/emc/task/emctaskmain.cc:897-956`。 + +`emcJointHome()` 源码:`linuxcnc/src/emc/task/taskintf.cc:796-805` + +执行内容: + +- 检查 joint 范围。 +- 下发 `EMCMOT_JOINT_HOME`。 + +motion 侧 `EMCMOT_JOINT_HOME` 源码:`linuxcnc/src/emc/motion/command.c:1411-1439` + +motion 前置条件: + +- `emcmotStatus->motion_state == EMCMOT_MOTION_FREE`,必须处于 joint/free 模式。 +- `motion.homing-inhibit` 不能为 true。 +- 当前不能已有 homing 流程在跑。 +- `GET_MOTION_ENABLE_FLAG()` 必须为 true。 +- 负 joint 表示 home all。 + +### 7.3 homing 状态机 + +`do_home_joint()` 最终进入 `linuxcnc/src/emc/motion/homing.c`。 + +核心状态记录: + +- `H[joint].homing` +- `H[joint].homed` +- `H[joint].home_state` +- `H[joint].joint_in_sequence` +- `joint.free_tp.enable` + +输出 HAL pin: + +源码:`linuxcnc/src/emc/motion/homing.c:541-573` + +- `joint.N.homing` +- `joint.N.homed` +- `joint.N.home-state` +- `joint.N.index-enable` + +完成逻辑: + +源码:`linuxcnc/src/emc/motion/homing.c:1376-1385` + +- `homing = 0` +- `homed = 1` +- `home_state = HOME_IDLE` +- `joint_in_sequence = 0` + +异常中止: + +源码:`linuxcnc/src/emc/motion/homing.c:1387-1397` + +- 所有 joint `homing = 0` +- 所有 joint `homed = 0` +- 所有 `free_tp.enable = 0` +- `home_state = HOME_IDLE` + +### 7.4 状态记录方式 + +task 通过 `emcMotionUpdate()` 将 motion homed 状态复制到 `emcStatus->motion.joint[n].homed`,AXIS 的 `s.homed[n]` 来自这里。 + +`task` 的 `all_homed()` 直接查 `emcStatus->motion.joint[i].homed`,源码:`linuxcnc/src/emc/task/emctaskmain.cc:151-152`。 + +## 8. 执行 Run 按钮 + +### 8.1 AXIS UI 调用链 + +源码:`linuxcnc/bin/axis:2379-2393` + +```python +def task_run(*event): + res = run_warn() + ... + ensure_mode(linuxcnc.MODE_AUTO) + c.auto(linuxcnc.AUTO_RUN, program_start_line) + program_start_line = 0 +``` + +AXIS UI 层条件: + +- 会执行 `run_warn()`,处理文件变更、保存、运行前警告等。 +- `ensure_mode(MODE_AUTO)` 切入 AUTO。 +- 然后发送 `AUTO_RUN`。 + +真正硬条件在 task 层: + +- machine 必须 ON。 +- AUTO 模式下允许。 +- 未 homed 且没有 `no_force_homing` 时拒绝。 +- 程序文件应已打开;未打开时会尝试打开 `emcStatus->task.file`。 + +### 8.2 task 调用链 + +```text +c.auto(AUTO_RUN, line) + -> EMC_TASK_PLAN_RUN + -> emcTaskPlan() 按状态门禁 + -> emcTaskIssueCommand() + -> case EMC_TASK_PLAN_RUN +``` + +`EMC_TASK_PLAN_RUN` 在 ON/AUTO/IDLE 中允许:`linuxcnc/src/emc/task/emctaskmain.cc:1015-1075`。 + +核心处理源码:`linuxcnc/src/emc/task/emctaskmain.cc:2318-2335` + +执行内容: + +- 如果未 homed 且 `!no_force_homing`,报错:`Can't run a program when not homed`。 +- 清 `motion.traj.single_stepping`。 +- 清 `stepping`、`steppingWait`。 +- 必要时 `emcTaskPlanOpen(emcStatus->task.file)`。 +- 记录 `programStartLine = run_msg->line`。 +- 设置 `emcStatus->task.interpState = READING`。 +- 设置 `emcStatus->task.task_paused = 0`。 + +### 8.3 解释器和 motion 下发 + +Run 后 `emcTaskPlan()` 进入 `READING`,周期性调用 readahead 逻辑读取 G-code。解释器通过 canonical 函数把运动命令排入 `interp_list`,`emcTaskExecute()` 再把 motion 命令下发到 motion。 + +运动命令如直线/圆弧最终在 motion `command.c` 中以 `EMCMOT_SET_LINE`、`EMCMOT_SET_CIRCLE` 等处理。运动状态通过 `emcmotStatus.id`、`depth`、`activeDepth`、`paused`、`current_vel` 等回传。 + +### 8.4 状态记录方式 + +Run 后主要状态变化: + +| 字段 | 变化 | +| --- | --- | +| `task.mode` | `AUTO` | +| `task.interpState` | `READING` | +| `task.task_paused` | `0` | +| `motion.traj.single_stepping` | `0` | +| `motion.traj.queue/activeQueue` | 随 motion 队列变化 | +| `motion.traj.id/tag` | 跟随当前运动段与源代码 state tag | + +`emcStatus->task.status` 顶层状态由 `emctaskmain.cc:3458-3476` 合成:有错误为 `ERROR`,全部完成且解释器 idle 为 `DONE`,否则为 `EXEC`。 + +## 9. 暂停 Pause 按钮 + +### 9.1 AXIS UI 调用链 + +源码:`linuxcnc/bin/axis:2402-2406` + +```python +def task_pause(*event): + if s.task_mode != linuxcnc.MODE_AUTO or s.interp_state not in ( + linuxcnc.INTERP_READING, + linuxcnc.INTERP_WAITING + ): + return + ensure_mode(linuxcnc.MODE_AUTO) + c.auto(linuxcnc.AUTO_PAUSE) +``` + +AXIS Pause 的严格条件: + +- `task_mode == MODE_AUTO` +- `interp_state in (INTERP_READING, INTERP_WAITING)` +- 不是仅凭 `runState == running` + +工具栏合并暂停/恢复 `task_pauseresume()` 源码:`linuxcnc/bin/axis:2433-2443` + +- 仅 `MODE_AUTO` 或 `MODE_MDI` 可操作。 +- 如果 `s.paused` 为真,发送 resume。 +- 否则如果解释器不是 idle,发送 pause。 + +### 9.2 task/motion 调用链 + +```text +c.auto(AUTO_PAUSE) + -> EMC_TASK_PLAN_PAUSE + -> emcTaskPlan() + -> emcTaskIssueCommand() + -> emcTrajPause() + -> EMCMOT_PAUSE + -> tpPause() +``` + +task 处理源码:`linuxcnc/src/emc/task/emctaskmain.cc:2337-2345` + +执行内容: + +- `emcTrajPause()` +- 若当前不是 `PAUSED`,保存 `interpResumeState = interpState` +- `task.interpState = PAUSED` +- `task.task_paused = 1` + +`emcTrajPause()` 源码:`linuxcnc/src/emc/task/taskintf.cc:1417-1421` + +motion 侧 `EMCMOT_PAUSE` 源码:`linuxcnc/src/emc/motion/command.c:1234-1240` + +执行内容: + +- `tpPause(&coord_tp)` +- `emcmotStatus->paused = 1` + +### 9.3 状态记录方式 + +Pause 后必须同时体现: + +- `task.interpState = PAUSED` +- `task.task_paused = 1` +- `motion.traj.paused = 1` +- `interpResumeState` 保存暂停前的 `READING` 或 `WAITING` + +Web 项目必须避免只改 UI `runState = paused`,否则 resume/step 会缺少 LinuxCNC 必需的恢复上下文。 + +## 10. 单步 Step 按钮 + +### 10.1 AXIS UI 调用链 + +源码:`linuxcnc/bin/axis:2395-2400` + +```python +def task_step(*event): + if s.task_mode != linuxcnc.MODE_AUTO or s.interp_state != linuxcnc.INTERP_IDLE: + o.set_highlight_line(None) + if run_warn(): return + ensure_mode(linuxcnc.MODE_AUTO) + c.auto(linuxcnc.AUTO_STEP) +``` + +AXIS Step 的含义不是“前端播放下一帧”,而是向 task 发送 `EMC_TASK_PLAN_STEP`。task 根据解释器状态决定: + +- AUTO/IDLE:先启动程序,再立刻暂停,进入单步准备态。 +- AUTO/READING 或 WAITING:设置 single stepping,下一段读入/执行后停住。 +- AUTO/PAUSED:若 motion 队列中有暂停运动,发 `EMCMOT_STEP` 让 motion 走到下一段;否则恢复解释器状态继续读。 + +### 10.2 task 处理 + +AUTO/IDLE 中 `STEP` 源码:`linuxcnc/src/emc/task/emctaskmain.cc:1078-1091` + +执行内容: + +- 构造 `taskPlanRunCmd.line = 0` +- 调 `emcTaskIssueCommand(&taskPlanRunCmd)` 启动程序 +- `emcTrajPause()` +- 保存 `interpResumeState` +- `task.interpState = PAUSED` +- `task.task_paused = 1` + +AUTO/READING 中 `STEP` 源码:`linuxcnc/src/emc/task/emctaskmain.cc:1178-1182` + +执行内容: + +- `motion.traj.single_stepping = 1` +- `stepping = 1` +- `steppingWait = 0` + +AUTO/PAUSED 中 `STEP` 源码:`linuxcnc/src/emc/task/emctaskmain.cc:1254-1266` + +执行内容: + +- `motion.traj.single_stepping = 1` +- `stepping = 1` +- 如果 `motion.traj.paused && queue > 0`,调用 `emcTrajStep()` +- 否则 `task.interpState = interpResumeState` +- `task.task_paused = 1` + +AUTO/WAITING 中 `STEP` 源码:`linuxcnc/src/emc/task/emctaskmain.cc:1330-1334` + +执行内容同 READING:设置单步标志。 + +### 10.3 motion 处理 + +`emcTrajStep()` 源码:`linuxcnc/src/emc/task/taskintf.cc:1438-1442` + +motion 侧 `EMCMOT_STEP` 源码:`linuxcnc/src/emc/motion/command.c:1265-1273` + +处理逻辑: + +- 如果 motion 当前 paused: + - 记录 `idForStep = emcmotStatus->id` + - `emcmotStatus->stepping = 1` + - resume 轨迹规划器,使其执行到 id 变化或下一步边界再停。 + +### 10.4 状态记录方式 + +单步相关字段: + +- task 侧静态变量:`stepping`、`steppingWait` +- task 可见状态:`emcStatus->motion.traj.single_stepping` +- motion 状态:`emcmotStatus->stepping`、`idForStep`、`paused` +- 解释器状态:`PAUSED` 或恢复到 `interpResumeState` + +Web 中若只实现“数组 frameIndex++”,不能等价于 LinuxCNC Step。正确做法是把 Step 作为 task 命令,驱动 task/motion 的 pause/step 状态机。 + +## 11. Resume 补充 + +虽然用户重点列出“急停、上电、Home、执行、暂停、单步执行”,但暂停机制必须包含 Resume 才完整。 + +AXIS `task_resume()` 源码:`linuxcnc/bin/axis:2424-2431` + +条件: + +- `s.paused` 为真。 +- `task_mode` 是 `AUTO` 或 `MDI`。 +- 发送 `AUTO_RESUME`。 + +task 处理源码:`linuxcnc/src/emc/task/emctaskmain.cc:2369-2376` + +执行内容: + +- `emcTrajResume()` +- `task.interpState = interpResumeState` +- `task.task_paused = 0` +- `motion.traj.single_stepping = 0` +- 清 `stepping`、`steppingWait` + +motion 侧 `EMCMOT_RESUME` 源码:`linuxcnc/src/emc/motion/command.c:1256-1263` + +执行内容: + +- `emcmotStatus->stepping = 0` +- `tpResume()` +- `emcmotStatus->paused = 0` + +## 12. 按钮前置条件汇总 + +| 按钮 | AXIS UI 前置条件 | task/motion 硬条件 | 执行后状态 | +| --- | --- | --- | --- | +| 急停 | 无;读 `s.task_state` 决定 reset 或 estop | `EMC_TASK_SET_STATE` 在多数状态允许 | `ESTOP` 分支 abort、disable、IO estop on;reset 分支 IO estop off、abort、同步解释器 | +| 上电 | 只有 `STATE_ESTOP_RESET` 发送 ON,否则发送 OFF | ON 要 motion enable 输入为真;OFF 总是 abort/disable | ON 后由 `motion.traj.enabled` 推导 `STATE_ON`;OFF 后推导 `ESTOP_RESET` 或 OFF 语义并清 volatile home | +| Home | `manual_ok()`;切 `MODE_MANUAL`;必要时 re-home 确认 | motion 必须 FREE、enabled、未 homing、未 inhibit | `joint.N.homing` 过程态;完成 `joint.N.homed=1`;失败清 homed | +| Run | `run_warn()`;切 `MODE_AUTO` | ON/AUTO/IDLE;已 homed 或 no_force_homing;程序打开 | `interpState=READING`,`task_paused=0`,motion 队列开始增长 | +| Pause | `MODE_AUTO` 且 `INTERP_READING/WAITING` | `EMC_TASK_PLAN_PAUSE`;motion `EMCMOT_PAUSE` | `interpState=PAUSED`,`task_paused=1`,`motion.paused=1`,保存 resume state | +| Step | 切 `MODE_AUTO`;非 idle 时可先 run_warn | 按 AUTO/IDLE/READING/PAUSED/WAITING 分支处理 | 设置 `single_stepping`;必要时 `EMCMOT_STEP`;保持/进入 paused | +| Resume | `paused` 且 `MODE_AUTO/MDI` | `EMC_TASK_PLAN_RESUME`;motion `EMCMOT_RESUME` | 恢复 `interpResumeState`,清 `task_paused/single_stepping/stepping` | + +## 13. WASM-port 完善建议 + +当前 `wasm-port` 已有 task/HAL WASM 入口: + +- `wasm-port/runtime/core/linuxcnc_wrap/linuxcnc_task_hal_wasm.cpp` +- `wasm-port/runtime/sdk/src/linuxcnc-task-hal.js` + +但是 `linuxcnc_task_hal_wasm.cpp` 仍是 `linuxcnc_task_motion_hal_wasm_phase4_minimal`,存在明显过渡实现: + +- 用字符串搜索和手写 JSON 解析命令。 +- 自己维护 `TaskRuntime.state/mode/interp_state/task_paused/single_stepping`。 +- 从 G-code 文本中用简单规则派生 motion,存在 G-code 语义重实现风险。 +- `readiness()` 中仍标记 `nativeTaskReady:false`、`nativeHalSyncReady:false`。 + +这与 `wasm-port/AGENTS.md` 的要求冲突风险较高:项目应复用 LinuxCNC source,不应扩展项目自写 CNC 语义。 + +建议按以下阶段完善。 + +### 13.1 第一阶段:把状态枚举和门禁表固化为 LinuxCNC 镜像 + +目标:先不改大架构,但移除随意字符串状态。 + +建议: + +1. 在 `runtime/core/linuxcnc_wrap` 增加 task 状态模型头文件,例如 `linuxcnc_task_state_model.hh`。 +2. 用与 LinuxCNC 一致的枚举名:`ESTOP`、`ESTOP_RESET`、`ON`、`MANUAL`、`AUTO`、`MDI`、`IDLE`、`READING`、`PAUSED`、`WAITING`。 +3. 实现一个 `task_accepts_command(state, mode, interp, command)`,逐项映射 `emcTaskPlan()` 的允许表。 +4. 所有 `lctask_send_command_json()` 先走该门禁表,返回明确错误码和错误文本。 +5. 增加测试覆盖: + - ESTOP 下仅允许 state/mode/config 等 immediate 命令。 + - ON/MANUAL 下允许 HOME,不允许 AUTO RUN。 + - ON/AUTO/IDLE 下允许 RUN/STEP。 + - ON/AUTO/READING 下允许 PAUSE/STEP,不允许 HOME。 + - ON/AUTO/PAUSED 下允许 RESUME/STEP。 + +### 13.2 第二阶段:替换手写 G-code motion 派生 + +当前 `enqueue_linear_move_from_line()` 和 Web 侧 `buildSourceLineMotionSegments()` 都会从 G-code 行解析轴和 feed,这属于语义漂移高风险点。 + +正确方向: + +1. G-code 到 canonical motion 必须由 vendored LinuxCNC interpreter 产生。 +2. task/HAL runtime 只消费 LinuxCNC canonical 输出或已验证的 motion plan,不自行解释 G-code。 +3. 对没有 motion plan 的程序,应返回“需要 interpreter plan”错误,而不是 fallback 解析 `G0/G1`。 +4. `buildTaskHalProgramMotionPlan()` 可保留为 host 边界适配器,但输入必须来自 LinuxCNC interpreter runtime 的 canonical events,而不是源码行正则解析。 + +### 13.3 第三阶段:引入 vendored task/motion 源码闭环 + +最终目标不是仿照 `emctaskmain.cc` 写一份 JS/C++ 状态机,而是逐步把 vendored LinuxCNC task/motion 代码纳入 WASM: + +1. 将 `emc/nml_intf/emc_nml.hh` 中的命令/状态结构作为 WASM 内部 ABI 参考。 +2. 用内存队列替代 NML transport,但保留 `EMC_TASK_*` / `EMCMOT_*` 命令类型。 +3. 将 `taskintf.cc` 的 `emcTrajEnable/Pause/Resume/Step/Home` 路由接到 `linuxcnc_motion_runtime.c`。 +4. 将 `emcTaskSetState()`、`emcTaskSetMode()`、`emcTaskAbort()` 的语义直接迁移或编译进 WASM。 +5. motion runtime 应逐步引入 `command.c`、`homing.c`、`control.c` 中真实状态更新,而不是只暴露“看起来相同”的 JSON status。 + +### 13.4 第四阶段:状态发布完全对齐 `emcStatus` + +WASM SDK `readStatus()` 应输出与 Python `linuxcnc.stat()` 结构同构的字段: + +- `task.state` +- `task.mode` +- `task.interpState` +- `task.execState` +- `task.taskPaused` +- `motion.traj.enabled` +- `motion.traj.paused` +- `motion.traj.singleStepping` +- `motion.traj.queue` +- `motion.traj.id` +- `motion.joint[n].homed` +- `motion.joint[n].homing` +- `motion.joint[n].homeState` +- `echoSerialNumber` +- `commandType` + +这样 Web 项目可以直接消费 LinuxCNC 状态,而不是维护第二套状态。 + +## 14. web-rtcp-5axis-xyzbc-trt-sim-plan 完善建议 + +当前 Web 项目已有: + +- `app/src/state/linuxcnc-task-policy.js` +- `app/src/state/store.js` +- `app/src/runtime/linuxcnc-task-hal-runtime.js` +- browser/node 对按钮路径的验证 + +这已经完成一部分 AXIS 对标,但还需要继续收敛。 + +### 14.1 状态源优先级必须调整 + +建议状态优先级: + +```text +taskHalStatus.ui/task/motion 原生状态 + > LinuxCNC interpreter canonical events + > Web UI 派生状态 +``` + +Web store 中 `machine.taskState/mode/interpState/runState` 应逐渐变成 task/HAL 状态的投影,而不是独立真相源。 + +### 14.2 按钮 action 应发送 LinuxCNC 命令,不直接改业务状态 + +按钮处理建议统一为: + +```text +UI click + -> gateLinuxCncTaskAction() + -> taskHalRuntime.sendCommand({ type: "EMC_TASK_*" }) + -> taskHalRuntime.runCycles() + -> taskHalRuntime.readStatus() + -> store 接收 STATUS_SYNC + -> UI 渲染 +``` + +避免: + +- click 后直接 `runState = "running"`; +- click 后直接 `machine.allHomed = true`; +- pause/step 直接操作播放帧; +- power 直接改 `powerOn` 而不等 motion enabled/status。 + +### 14.3 补齐 Home 状态过程态 + +Web 当前常见实现是 `HOME` 后立即 `allHomed=true`。LinuxCNC 真实机制是: + +```text +EMC_JOINT_HOME + -> joint.N.homing = true + -> home_state 多阶段变化 + -> joint.N.homed = true +``` + +建议 Web 状态增加: + +- `machine.joints[n].homing` +- `machine.joints[n].homed` +- `machine.joints[n].homeState` +- `machine.homingActive` +- `machine.allHomed` + +按钮门禁: + +- homing 过程中禁止再次 Home。 +- Run 前使用 `allHomed || noForceHoming`。 +- OFF/ESTOP 时清 volatile home,而不是无条件清所有 home;如果当前模型无法区分 volatile,先在文档和状态字段中标注“volatile home 简化”。 + +### 14.4 补齐 Step 的 LinuxCNC 语义 + +Web 需要区分三种 Step: + +1. 程序 idle 首次 step:等价于 RUN 后立即 PAUSE。 +2. 程序 running 中 step:设置 single stepping,等待下一段边界停住。 +3. 程序 paused 中 step:若 motion queue 有内容,发送 motion step;否则恢复 interpreter 读下一段。 + +建议在 `linuxcnc-task-policy.js` 中把 `STEP` 门禁拆开: + +- `canStepFromIdle` +- `canStepWhileReading` +- `canStepWhilePaused` +- `canStepWhileWaiting` + +并在 status 中显示: + +- `task.singleStepping` +- `motion.stepping` +- `motion.idForStep` +- `motion.paused` + +### 14.5 Pause/Resume 继续保持 AXIS 门禁 + +已完成的严格对标应继续保留: + +- `PAUSE`:仅 `STATE_ON + MODE_AUTO + INTERP_READING/WAITING`。 +- `PAUSE_RESUME`:仅 `MODE_AUTO/MDI`;paused 时 resume;非 idle 时 pause。 +- `RESUME`:必须 `paused && MODE_AUTO/MDI`。 + +后续测试不要只断言按钮可点击,应断言 task/HAL status: + +- pause 后 `task.interpState=PAUSED` +- pause 后 `task.taskPaused=true` +- pause 后 `motion.paused=true` +- resume 后恢复 `interpResumeState` +- step 后 `singleStepping=true` + +### 14.6 5 轴 XYZBC-TRT 特有要求 + +5 轴仿真不应把主按钮逻辑和 RTCP/kinematics 逻辑混在一起。建议分层: + +1. task/motion 状态机:只负责开关机、home、run、pause、step。 +2. kinematics/RTCP:只负责 XYZBC-TRT 位置变换和 TCP 显示。 +3. interpreter/remap:负责 M428/M429/M430、switchkins、G-code 语义。 +4. UI:只渲染状态并发送命令。 + +Run 前置条件除 LinuxCNC 通用条件外,还应检查: + +- 选定 profile 的 INI 已加载; +- machine files 已 staged; +- 当前 G-code 已 open 到 task/HAL session; +- kinematics runtime 与 task/HAL runtime readiness 均为 true; +- 如果程序依赖 switchkins/remap,HAL `motion.switchkins-type` 同步状态应可观测。 + +## 15. 推荐验证矩阵 + +### 15.1 LinuxCNC 行为矩阵 + +用本地 LinuxCNC 源码为基准建立 golden matrix: + +| 初始状态 | 命令 | 期望 | +| --- | --- | --- | +| ESTOP/MANUAL/IDLE | ESTOP button | `STATE_ESTOP_RESET` | +| ESTOP_RESET/MANUAL/IDLE | Power | `STATE_ON` | +| ESTOP/MANUAL/IDLE | Power | 不上电,走 OFF 分支 | +| ON/MANUAL/IDLE | Home All | `joint.*.homing -> homed` | +| ON/AUTO/IDLE + unhomed | Run | 拒绝,提示未 homed | +| ON/AUTO/IDLE + homed | Run | `interpState=READING` | +| ON/AUTO/READING | Pause | `interpState=PAUSED`、`motion.paused=true` | +| ON/AUTO/PAUSED | Resume | 恢复 reading/waiting | +| ON/AUTO/IDLE + homed | Step | run + pause,single step 准备 | +| ON/AUTO/PAUSED + queue>0 | Step | `EMCMOT_STEP`,执行下一段后停 | + +### 15.2 wasm-port 测试建议 + +新增或扩展: + +- `tests/wasm/node/verify_task_state_matrix.mjs` +- `tests/wasm/node/verify_task_home_state_machine.mjs` +- `tests/wasm/node/verify_task_pause_resume_step.mjs` + +每个测试不要只看返回码,要读 `lctask_read_status_json()`: + +- task 字段; +- motion 字段; +- HAL pins; +- events; +- command echo。 + +### 15.3 Web 测试建议 + +在现有 `verify_xyzbc_trt_web_app.mjs` 和 browser smoke 上补齐: + +- ESTOP/RESET/POWER 不允许绕过; +- Home 有过程态; +- Run 未 homed 拒绝; +- Pause idle 拒绝; +- Pause manual 拒绝; +- Step idle 首次启动后暂停; +- Step paused 推进一段; +- Resume 清 single stepping; +- Store 状态与 taskHalStatus 一致。 + +## 16. 实施优先级 + +建议按以下顺序推进: + +1. `wasm-port` 先消除 task/HAL runtime 中的 G-code 正则解析 fallback,要求 motion plan 必须来自 LinuxCNC interpreter canonical output。 +2. `wasm-port` 把 `lctask_send_command_json()` 改为显式命令结构解析和 LinuxCNC 状态门禁表。 +3. `wasm-port` 补齐 `task/motion/joint` 状态字段,使 `readStatus()` 接近 `linuxcnc.stat()`。 +4. Web store 改为 taskHalStatus 投影源,减少直接改 `runState/machine` 的分支。 +5. Web Home/Step 加过程态和真实 task/motion 状态断言。 +6. 再继续推进 vendored `emctask.cc/taskintf.cc/command.c/homing.c` 的更直接编译或等价适配。 + +最终目标:Web 按钮只是 AXIS 的浏览器外壳,状态机和 CNC 语义来自 LinuxCNC 源码或其受控 WASM 适配层。 diff --git a/项目分析/AXIS主界面按钮调用链与WASM完善建议.md b/项目分析/AXIS主界面按钮调用链与WASM完善建议.md new file mode 100644 index 0000000..56e719f --- /dev/null +++ b/项目分析/AXIS主界面按钮调用链与WASM完善建议.md @@ -0,0 +1,723 @@ +# AXIS 主界面按钮调用链、状态机制与 WASM 完善建议 + +分析对象: + +- 上游源码:`/home/mes123456/cnc_wams/linuxcnc` +- 独立 WASM 移植:`/home/mes123456/cnc_wams/wasm-port` +- Web 五轴仿真:`/home/mes123456/cnc_wams/web-rtcp-5axis-xyzbc-trt-sim-plan` + +本文聚焦 AXIS 主界面的“急停、上电、Home、执行、暂停、单步执行”。LinuxCNC 这里不是纯 C++:AXIS 前端是 Tcl/Python,Python 扩展和 task 主要是 C++,motion/homing 是 C。Web/WASM 移植时应保留这个分层语义,而不是只在 JavaScript 中复刻按钮效果。 + +## 1. 总体调用链 + +AXIS 按钮的完整链路是: + +```text +AXIS Tcl 按钮/菜单 + -> axis.py 回调 + -> linuxcnc.command() Python C++ 扩展 + -> EMC_* NML 命令写入 emcCommand + -> milltask/emctaskmain.cc 周期读取命令 + -> emcTaskPlan() 按 task_state/task_mode/interp_state 门控 + -> emcTaskIssueCommand() 分发到 task/motion/io + -> taskintf.cc 写 EMCMOT_* 到 motion + -> motion/command.c 与 homing.c 更新实时运动状态 + -> emcTaskUpdate()/emcMotionUpdate() 写 emcStatus + -> linuxcnc.stat().poll() + -> AXIS Tk 变量 + -> axis.tcl trace 调 update_state() 刷新按钮可用性 +``` + +关键源码位置: + +| 层级 | 文件 | 作用 | +|---|---|---| +| AXIS Tcl UI | `linuxcnc/share/axis/tcl/axis.tcl` | 菜单、工具栏按钮、按钮启用条件、Tk 状态变量 trace | +| AXIS Python | `linuxcnc/src/emc/usr_intf/axis/scripts/axis.py` | 按钮回调、`s.poll()` 读状态、`c.*` 发命令 | +| Python C++ 扩展 | `linuxcnc/src/emc/usr_intf/axis/extensions/emcmodule.cc` | `linuxcnc.command()` 和 `linuxcnc.stat()` 到 NML 的绑定 | +| NML 类型 | `linuxcnc/src/emc/nml_intf/emc.hh` | `EMC_TASK_STATE`、`EMC_TASK_MODE`、`EMC_TASK_INTERP`、命令类型 | +| task 主循环 | `linuxcnc/src/emc/task/emctaskmain.cc` | 读命令、门控、解释器计划、执行队列、写 status | +| task 状态 | `linuxcnc/src/emc/task/emctask.cc` | `emcTaskSetState()`、`emcTaskSetMode()`、`determineState()`、`emcTaskAbort()` | +| task->motion 接口 | `linuxcnc/src/emc/task/taskintf.cc` | 把 task 命令翻译成 `EMCMOT_*` motion 命令 | +| motion 命令 | `linuxcnc/src/emc/motion/command.c` | `EMCMOT_ENABLE/PAUSE/RESUME/STEP/JOINT_HOME` 等实际运动状态处理 | +| homing 状态机 | `linuxcnc/src/emc/motion/homing.c` | 回零序列和 `homed/homing/allhomed` 状态维护 | + +## 2. 状态模型 + +### 2.1 task 状态 + +`emc.hh` 定义: + +```text +EMC_TASK_STATE: ESTOP, ESTOP_RESET, OFF, ON +EMC_TASK_MODE: MANUAL, AUTO, MDI +EMC_TASK_INTERP: IDLE, READING, PAUSED, WAITING +EMC_TASK_EXEC: DONE, WAITING_FOR_MOTION, WAITING_FOR_IO, ERROR, ... +``` + +AXIS 显示和按钮门禁主要看: + +- `s.task_state` +- `s.task_mode` +- `s.interp_state` +- `s.paused` +- `s.task_paused` +- `s.homed[]` +- `s.motion_mode` +- `s.file` + +### 2.2 task_state 的真实来源 + +`emcTaskSetState()` 执行的是动作,最终显示的 `task.state` 由 `determineState()` 根据下级状态推导: + +```text +io.aux.estop == true -> ESTOP +io.aux.estop == false 且 motion.traj.enabled == false -> ESTOP_RESET +io.aux.estop == false 且 motion.traj.enabled == true -> ON +``` + +因此 `STATE_OFF` 在 Python 扩展说明中基本等价于“未使能/急停复位后未上电”语义;真实显示通常落到 `ESTOP_RESET`。Web 端若保留 `off`,应把它作为 UI/过渡状态处理,不能把它理解为能绕过急停复位直接上电的状态。 + +### 2.3 task_mode 的真实来源 + +`determineMode()` 根据 motion 轨迹模式推导: + +```text +motion.traj.mode == FREE -> MANUAL +motion.traj.mode == TELEOP -> MANUAL +motion.traj.mode == COORD -> mdiOrAuto +``` + +`emcTaskSetMode()` 的主要动作: + +- 切 MANUAL:若全回零则 motion 进 `TELEOP`,否则进 `FREE`。 +- 切 MDI:motion 进 `COORD`,abort 当前任务并同步解释器,`mdiOrAuto = MDI`。 +- 切 AUTO:motion 进 `COORD`,abort 当前任务并同步解释器,`mdiOrAuto = AUTO`。 + +### 2.4 状态如何记录并返回前端 + +task 主循环每周期执行: + +```text +emcCommandBuffer->read() +emcTaskPlan() +emcTaskExecute() +emcMotionUpdate(&emcStatus->motion) +emcTaskUpdate(&emcStatus->task) +emcStatusBuffer->write(emcStatus) +``` + +AXIS 的 `AxisCanon.update()` 通过 `self.stat.poll()` 读取 status,再写入 Tk 变量: + +```text +vars.task_mode <- self.stat.task_mode +vars.task_state <- self.stat.task_state +vars.task_paused <- self.stat.task_paused +vars.interp_state <- self.stat.interp_state +vars.interp_pause <- self.stat.paused +vars.motion_mode <- self.stat.motion_mode +``` + +`axis.tcl` 对这些变量设置 trace,变量变化后调用 `update_state()`,统一刷新按钮状态。 + +## 3. AXIS UI 按钮入口与门禁 + +`axis.tcl` 中主菜单和工具栏映射: + +| UI 动作 | Tcl command | Python 函数 | +|---|---|---| +| F1 / 急停 | `estop_clicked` | `commands.estop_clicked()` | +| F2 / 上电下电 | `onoff_clicked` | `commands.onoff_clicked()` | +| Run | `task_run` | `commands.task_run()` | +| Step | `task_step` | `commands.task_step()` | +| Pause | `task_pause` | `commands.task_pause()` | +| Resume | `task_resume` | `commands.task_resume()` | +| 工具栏 Pause/Resume 合并按钮 | `task_pauseresume` | `commands.task_pauseresume()` | +| Home Axis | `home_joint` | `commands.home_joint()` | + +`update_state()` 的主要按钮可用条件: + +| 按钮/菜单 | AXIS UI 可执行条件 | +|---|---| +| 急停 | 始终显示为可按,按下按当前状态切换 ESTOP/ESTOP_RESET | +| 上电/下电 | `task_state != STATE_ESTOP` | +| Run | `task_state == STATE_ON && interp_state == INTERP_IDLE` | +| Run from selected line | `STATE_ON && INTERP_IDLE && highlight_line != -1` | +| Home / Unhome / Zero | `task_state == STATE_ON && interp_state == INTERP_IDLE` | +| Step | `task_state == STATE_ON && taskfile != ""` | +| Pause 菜单 | `STATE_ON && (INTERP_READING || INTERP_WAITING)` | +| Resume 菜单 | `STATE_ON && INTERP_PAUSED` | +| Pause/Resume 工具栏 | `STATE_ON && interp_state != INTERP_IDLE` | +| Stop | `STATE_ON && interp_state != INTERP_IDLE` | + +注意:有些 Python 回调本身还有二次检查;因此“UI 可点”和“回调被直接调用后的行为”要分开看。 + +## 4. 急停 + +### 4.1 调用链 + +```text +axis.tcl 急停按钮 / F1 + -> axis.py estop_clicked() + -> s.poll() + -> 当前 ESTOP: c.state(STATE_ESTOP_RESET) + 否则: c.state(STATE_ESTOP) + -> emcmodule.cc state() + -> EMC_TASK_SET_STATE + -> emctaskmain.cc emcTaskPlan() + -> emcTaskIssueCommand() + -> emctask.cc emcTaskSetState(ESTOP 或 ESTOP_RESET) +``` + +### 4.2 急停的先决条件 + +- UI 层:急停按钮不依赖上电、模式、程序状态。 +- task 层:`EMC_TASK_SET_STATE` 在 ESTOP/OFF/ESTOP_RESET/ON 多状态下都属于可立即处理命令。 +- 运动中、解释器读取中、MDI 中均可触发。 + +### 4.3 急停执行后的状态记录 + +`emcTaskSetState(ESTOP)` 主要做: + +```text +emcMotionAbort() +emcSpindleAbort() +emcAuxEstopOn() +emcTrajDisable() +emcCoolantFloodOff() +emcTaskAbort() +emcIoAbort(TASK_STATE_ESTOP) +emcJointUnhome(-2) # 仅 volatile_home 关节 +emcAbortCleanup() +emcTaskPlanSynch() +``` + +随后 `determineState()` 因 `io.aux.estop == true` 返回 `ESTOP`。`emcTaskAbort()` 同时清理: + +```text +interpState = IDLE +execState = DONE +task_paused = 0 +motionLine/readLine/current command 清零 +stepping = 0 +steppingWait = 0 +interp_list.clear() +``` + +### 4.4 解除急停 + +同一个按钮在当前 `STATE_ESTOP` 时发 `STATE_ESTOP_RESET`。`emcTaskSetState(ESTOP_RESET)`: + +```text +emcAuxEstopOff() +emcCoolantFloodOff() +emcTaskAbort() +emcIoAbort(TASK_STATE_ESTOP_RESET) +emcSpindleAbort() +emcAbortCleanup() +emcTaskPlanSynch() +``` + +此时 motion 仍未 enable,`determineState()` 返回 `ESTOP_RESET`,AXIS 状态显示为 `OFF`。 + +## 5. 上电/下电 + +### 5.1 调用链 + +```text +axis.tcl 上电按钮 / F2 + -> axis.py onoff_clicked() + -> s.poll() + -> 当前 STATE_ESTOP_RESET: c.state(STATE_ON) + 否则: c.state(STATE_OFF) + -> emcmodule.cc state() + -> EMC_TASK_SET_STATE + -> emctaskmain.cc emcTaskIssueCommand() + -> emctask.cc emcTaskSetState() + -> taskintf.cc emcTrajEnable()/emcTrajDisable() + -> motion/command.c EMCMOT_ENABLE 或 EMCMOT_DISABLE +``` + +### 5.2 上电先决条件 + +- AXIS UI:电源按钮只有 `task_state != STATE_ESTOP` 时可点。 +- 要真正进入 ON:当前必须是 `STATE_ESTOP_RESET`。 +- 若直接调用 `onoff_clicked()` 且当前不是 `STATE_ESTOP_RESET`,函数会走 `STATE_OFF` 分支。 + +### 5.3 上电后的状态记录 + +`emcTaskSetState(ON)`: + +```text +emcTrajEnable() +emcCoolantFloodOff() +``` + +motion 收到 `EMCMOT_ENABLE` 后置轨迹/关节使能。下一轮 `determineState()` 看到: + +```text +io.aux.estop == false +motion.traj.enabled == true +``` + +于是 `task.state = ON`。AXIS 轮询后更新按钮:Run/Home/MDI/Jog 类动作开始具备进一步门禁条件。 + +### 5.4 下电后的状态记录 + +`emcTaskSetState(OFF)`: + +```text +emcMotionAbort() +emcSpindleAbort() +emcTrajDisable() +emcIoAbort(TASK_STATE_OFF) +emcCoolantFloodOff() +emcTaskAbort() +emcJointUnhome(-2) +emcAbortCleanup() +emcTaskPlanSynch() +``` + +下一轮 `determineState()` 通常显示 `ESTOP_RESET`,同时解释器和单步状态被清空。配置为 volatile home 的关节会失去 homed。 + +## 6. Home + +### 6.1 调用链 + +```text +axis.tcl Home Axis / Home All + -> axis.py home_all_joints() 或 home_joint() + -> manual_ok() + -> ensure_mode(MODE_MANUAL) + -> go_home(joint 或 -1) + -> set_motion_teleop(0) + -> c.home(num) + -> emcmodule.cc home() + -> EMC_JOINT_HOME + -> emctaskmain.cc emcTaskIssueCommand() + -> taskintf.cc emcJointHome() + -> EMCMOT_JOINT_HOME + -> motion/command.c + -> homing.c do_home_joint() + -> homing.c do_homing() 伺服周期状态机 +``` + +### 6.2 Home 先决条件 + +AXIS/Python 层: + +- `manual_ok()` 必须为真: + - `task_state == STATE_ON` + - `interp_state == IDLE`,或 MDI 模式下 MDI 队列仍可接受命令 +- `ensure_mode(MODE_MANUAL)` 切到手动模式。 +- `go_home()` 会检查所有 joint,若已有 joint 正在 homing,则拒绝。 +- 单关节回零时: + - 非 identity kinematics 下,从坐标轴字母回零会被拒绝,需用 joint 模式。 + - duplicate coordinate letters 下禁止按重复轴字母单独回零。 + - 已 homed 的 joint 会弹确认。 + +task/motion 层: + +- task 必须处于 ON/MANUAL 才会把 `EMC_JOINT_HOME` 当作可执行命令。 +- motion 收到 `EMCMOT_JOINT_HOME` 后要求: + - `motion_state == EMCMOT_MOTION_FREE` + - `motion.homing-inhibit` 未置位 + - 没有其他 homing 正在进行 + - motion enable flag 为真 + +### 6.3 Home 状态记录 + +`taskintf.cc emcJointHome()` 只写 motion 命令: + +```text +emcmotCommand.command = EMCMOT_JOINT_HOME +emcmotCommand.joint = joint +usrmotWriteEmcmotCommand(&emcmotCommand) +``` + +真正状态在 `homing.c`: + +- `do_home_joint(-1)` 调 `do_home_all()`,并先保证至少一个 joint 为 unhomed。 +- 单 joint 调 `do_home_one_joint()`。 +- `do_homing()` 每个 servo period 推进 home sequence。 +- `HOME_FINISHED` 时 joint `homed=1`、`homing=0`、home state 回到 `HOME_IDLE`。 +- `base_get_allhomed()` 遍历所有 active joints,只要一个未 homed 就返回 false。 + +task 状态回填路径: + +```text +motion/homing.c H[j].homed + -> motion joint_status[j].homed + -> taskintf.cc emcJointUpdate() 写 EMC_JOINT_STAT.homed/homing + -> emcStatus.motion.joint[j].homed + -> emcmodule.cc Stat_homed + -> axis.py s.homed + -> AXIS 重绘 DRO/按钮 +``` + +## 7. 执行 Run + +### 7.1 调用链 + +```text +axis.tcl Run + -> axis.py task_run() + -> run_warn() + -> ensure_mode(MODE_AUTO) + -> c.auto(AUTO_RUN, program_start_line) + -> emcmodule.cc emcauto() + -> EMC_TASK_PLAN_RUN + -> emctaskmain.cc emcTaskPlan() + -> emcTaskIssueCommand() + -> emcTaskPlanOpen() 如需要打开当前 file + -> interpState = READING + -> emcTaskPlanRead()/emcTaskPlanExecute() + -> interp_list 生成 EMC_TRAJ_* 等命令 + -> emcTaskExecute() + -> taskintf.cc 写 EMCMOT_SET_LINE/SET_CIRCLE 等 motion 命令 + -> motion trajectory planner 执行 +``` + +### 7.2 Run 先决条件 + +AXIS UI: + +- `task_state == STATE_ON` +- `interp_state == INTERP_IDLE` +- 已有 taskfile + +Python: + +- `run_warn()` 通过运行前警告检查。 +- `ensure_mode(MODE_AUTO)` 成功。 + +task: + +- `EMC_TASK_PLAN_RUN` 在 ON/AUTO/IDLE 下可执行。 +- `emcTaskIssueCommand(PLAN_RUN)` 检查: + - 若 `!all_homed() && !no_force_homing`,报错 `Can't run a program when not homed`。 + - 若文件未打开但 `emcStatus->task.file` 有值,会打开。 + +### 7.3 Run 状态记录 + +Run 入口设置: + +```text +motion.traj.single_stepping = 0 +stepping = 0 +steppingWait = 0 +programStartLine = run_msg->line +task.interpState = READING +task.task_paused = 0 +``` + +执行中: + +- `emcTaskPlan()` 读取解释器行,设置 `readLine`、`command`。 +- canonical 命令进入 `interp_list`。 +- `emcTaskExecute()` 从 `interp_list.get()` 取命令,设置 `currentLine`,并用 `emcTrajSetMotionId(currentLine)` 让 motion 的 id 与程序行关联。 +- motion 执行时更新 `motion.traj.id/tag/current_vel/queueFull`。 +- `emcTaskUpdate()` 把 `motionLine`、active G/M code、file 等写入 status。 + +程序结束时,`interpState` 回到 `IDLE`,`execState` 回到 `DONE`,AXIS 的 Run 按钮 relief 恢复。 + +## 8. 暂停 Pause 与恢复 Resume + +### 8.1 Pause 调用链 + +```text +axis.tcl Pause 菜单 + -> axis.py task_pause() + -> 要求 MODE_AUTO 且 interp_state 为 READING/WAITING + -> ensure_mode(MODE_AUTO) + -> c.auto(AUTO_PAUSE) + -> emcmodule.cc emcauto() + -> EMC_TASK_PLAN_PAUSE + -> emctaskmain.cc emcTaskIssueCommand() + -> emcTrajPause() + -> taskintf.cc EMCMOT_PAUSE + -> motion/command.c tpPause() +``` + +工具栏合并按钮 `task_pauseresume()` 逻辑: + +- task mode 不是 AUTO/MDI:直接返回。 +- 若 `s.paused` 为真:未被 `resume-inhibit` 禁止时发 `AUTO_RESUME`。 +- 若未暂停且 `interp_state != IDLE`:发 `AUTO_PAUSE`。 + +### 8.2 Pause 先决条件 + +菜单 Pause: + +- `task_state == STATE_ON` +- `task_mode == MODE_AUTO` +- `interp_state in (READING, WAITING)` + +工具栏 Pause/Resume: + +- `task_state == STATE_ON` +- `task_mode in (AUTO, MDI)` +- `interp_state != IDLE` + +### 8.3 Pause 状态记录 + +task 收到 `PLAN_PAUSE`: + +```text +emcTrajPause() +if task.interpState != PAUSED: + interpResumeState = task.interpState +task.interpState = PAUSED +task.task_paused = 1 +``` + +motion 收到 `EMCMOT_PAUSE`: + +```text +tpPause(&coord_tp) +emcmotStatus->paused = 1 +``` + +AXIS 同时看: + +- `interp_state == PAUSED` +- `s.paused` / `interp_pause != 0` +- `task_paused` + +因此 Pause 工具栏按钮 relief 变成 sunken。 + +### 8.4 Resume 调用链与状态 + +```text +axis.py task_resume()/task_pauseresume() + -> c.auto(AUTO_RESUME) + -> EMC_TASK_PLAN_RESUME + -> emcTaskIssueCommand() + -> emcTrajResume() + -> task.interpState = interpResumeState + -> task.task_paused = 0 + -> motion.traj.single_stepping = 0 + -> stepping = 0 + -> steppingWait = 0 + -> motion EMCMOT_RESUME + -> tpResume() + -> emcmotStatus->paused = 0 +``` + +Resume 先决条件: + +- Python 要求 `s.paused` 为真。 +- task mode 必须是 AUTO 或 MDI。 +- 工具栏合并按钮还要检查 `resume_inhibit`,如果 HAL pin 禁止恢复,则忽略。 + +## 9. 单步执行 Step + +### 9.1 调用链 + +```text +axis.tcl Step + -> axis.py task_step() + -> 若不是 AUTO+IDLE,则先 run_warn() + -> ensure_mode(MODE_AUTO) + -> c.auto(AUTO_STEP) + -> emcmodule.cc emcauto() + -> EMC_TASK_PLAN_STEP + -> emctaskmain.cc 根据 interpState 分支处理 + -> task stepping/single_stepping 状态 + -> 必要时 emcTrajStep() + -> motion/command.c EMCMOT_STEP + -> control.c 在 motion id 改变时自动 pause +``` + +### 9.2 Step 先决条件 + +AXIS UI: + +- `task_state == STATE_ON` +- `taskfile != ""` + +Python/task: + +- 若当前不是 AUTO+IDLE,`task_step()` 会做运行警告检查。 +- `ensure_mode(MODE_AUTO)`。 +- task 层仍要求 ON/AUTO 对应状态下允许 `PLAN_STEP`。 +- 初次从 IDLE step 时,task 先等价启动 run,再立即 pause。 +- 已暂停且 motion 队列中有未执行运动时,`PLAN_STEP` 会调用 `emcTrajStep()` 推进一个 motion id。 + +### 9.3 Step 状态记录 + +task 全局变量: + +```text +stepping = 1 +steppingWait = 0 +motion.traj.single_stepping = 1 +``` + +`STEPPING_CHECK()` 是 `emcTaskExecute()` 中每个等待状态前的宏: + +- 第一次进入时记录 `steppedLine = currentLine` 并置 `steppingWait = 1`。 +- 后续若 `currentLine` 已改变,break,等待下一次 step。 + +motion 层 `EMCMOT_STEP`: + +```text +if emcmotStatus->paused: + idForStep = emcmotStatus->id + emcmotStatus->stepping = 1 + tpResume(coord_tp) + emcmotStatus->paused = 1 +else: + reportError("can't STEP while already executing") +``` + +`control.c` 每周期检测: + +```text +if emcmotStatus->stepping && idForStep != emcmotStatus->id: + tpPause(coord_tp) + emcmotStatus->stepping = 0 + emcmotStatus->paused = 1 +``` + +这说明单步不是简单“跑一行 JS 计时器”,而是 task 的解释器队列单步与 motion 的 trajectory id 单步共同实现。 + +## 10. 每个按钮的先决条件与状态影响总表 + +| 按钮 | UI 先决条件 | task/motion 先决条件 | 发出的核心命令 | 执行后关键状态 | +|---|---|---|---|---| +| 急停 | 基本始终可触发 | 无需 ON/IDLE | `EMC_TASK_SET_STATE ESTOP` | `io.aux.estop=1`、motion disabled、`task.state=ESTOP`、解释器 abort、volatile home 清除 | +| 解除急停 | 当前 ESTOP 时同一按钮执行 reset | 急停链/HAL 允许复位 | `EMC_TASK_SET_STATE ESTOP_RESET` | `io.aux.estop=0`、motion 仍 disabled、`task.state=ESTOP_RESET` | +| 上电 | `task_state != ESTOP`;真正上电需当前 `ESTOP_RESET` | motion 可 enable | `EMC_TASK_SET_STATE ON` | `motion.traj.enabled=1`、`task.state=ON` | +| 下电 | 电源按钮在非 `ESTOP_RESET` 分支 | 无需 IDLE,属于立即命令 | `EMC_TASK_SET_STATE OFF` | abort、motion disabled、volatile home 清除、通常显示 `ESTOP_RESET` | +| Home | `STATE_ON && INTERP_IDLE`;Python 还要求 `manual_ok()` | MANUAL/FREE、motion enabled、无 homing inhibit、无其他 homing | `EMC_JOINT_HOME` -> `EMCMOT_JOINT_HOME` | `joint.N.homing` 过程变化,完成后 `joint.N.homed=1`,`all_homed()` 变真 | +| Run | `STATE_ON && INTERP_IDLE && taskfile != ""` | AUTO、已回零或 `no_force_homing`、程序已打开 | `EMC_TASK_PLAN_RUN` | `interpState=READING`、`task_paused=0`、解释器生成 motion 队列 | +| Pause | 菜单要求 `STATE_ON && READING/WAITING`;工具栏要求非 IDLE | AUTO,或工具栏允许 AUTO/MDI | `EMC_TASK_PLAN_PAUSE` -> `EMCMOT_PAUSE` | `interpResumeState=原状态`、`interpState=PAUSED`、`task_paused=1`、`motion.paused=1` | +| Resume | `STATE_ON && INTERP_PAUSED` 或工具栏 paused | AUTO/MDI、`s.paused`、无 resume inhibit | `EMC_TASK_PLAN_RESUME` -> `EMCMOT_RESUME` | `interpState=interpResumeState`、`task_paused=0`、`motion.paused=0`、单步清零 | +| Step | `STATE_ON && taskfile != ""` | AUTO;不同 interpState 分支处理 | `EMC_TASK_PLAN_STEP`,必要时 `EMCMOT_STEP` | `single_stepping=1`、`stepping=1`、执行一个 task/motion id 后回 PAUSED | + +## 11. 对 `wasm-port` 的完善建议 + +`wasm-port` 当前方向正确:它已经有 `runtime/core/linuxcnc_wrap/linuxcnc_task_hal_wasm.cpp`、`linuxcnc_motion_runtime.c`、SDK `runtime/sdk/src/linuxcnc-task-hal.js`,并通过 `lctask_send_command_json()` 接收类似 `EMC_TASK_SET_STATE`、`EMC_TASK_PLAN_RUN/PAUSE/RESUME/STEP` 的命令。 + +但当前 `linuxcnc_task_hal_wasm.cpp` 仍是“phase4 minimal”运行时: + +- `TaskRuntime` 用字符串保存 `state/mode/interp_state/exec_state`。 +- `EMC_TASK_SET_STATE` 只是直接写 `state` 字符串,尚未按 LinuxCNC 的 `determineState()` 从 IO estop 与 motion enabled 推导。 +- `EMC_JOINT_HOME` 直接发一条零位运动并立即认为完成,没有移植 `homing.c` 的 home sequence、`homing_inhibit`、`HOME_*` flags、volatile home。 +- `EMC_TASK_PLAN_STEP` 已有 `single_stepping`,但还未完整复刻 `STEPPING_CHECK()` 与 motion id 变化暂停的双层逻辑。 +- `nativeTaskReady/nativeHalSyncReady/fullLinuxCncProgramExecutionReady` 仍报告 false,说明它还不是完整 task/motion 语义源。 + +建议按以下顺序推进: + +1. 建立 LinuxCNC task 状态结构镜像 + 在 WASM runtime 中用枚举替代字符串:`EMC_TASK_STATE`、`EMC_TASK_MODE`、`EMC_TASK_INTERP`、`EMC_TASK_EXEC`。保留对外 JSON 小写/字符串只是 SDK 边界转换。 + +2. 复刻 `determineState()` 与 `determineMode()` + 不要让 `SET_STATE ON` 直接等于 `task.state=ON`。应维护: + - `io.aux.estop` + - `motion.traj.enabled` + - `motion.traj.mode` + - `mdiOrAuto` + 然后每个 task cycle 推导 `task.state/task.mode`。 + +3. 把 `emcTaskSetState()` 行为补齐 + `ESTOP/OFF/ESTOP_RESET/ON` 至少要更新: + - motion abort/enable/disable + - spindle/coolant 状态 + - interpreter abort/synch + - `task_paused/single_stepping/exec_state/interp_state` + - volatile home 清除 + +4. 移植或包装 `homing.c` + Home 不能长期用“直接置 allHomed”替代。应把 vendored `motion/homing.c` 与必要 `motion.h/motion_struct.h` 状态结构纳入 WASM,或做最窄 shim 调用: + - `set_joint_homing_params()` + - `do_home_joint()` + - `do_homing()` + - `get_allhomed()/get_homed()/get_homing()` + 并暴露到 status JSON。 + +5. 补齐 Step 双层语义 + task 层实现 `stepping/steppingWait/steppedLine`,motion 层保留 `idForStep`,当 motion id 改变时 pause。当前 runCycles 中“执行一次后 paused”的做法应替换为 LinuxCNC 的 line/id 驱动。 + +6. 用 LinuxCNC status 字段作为唯一真实状态源 + SDK `readStatus()` 应返回 task/motion status;Web store 只做投影,不再自行判定“已经暂停/已经回零/已经上电”。 + +7. 增加 native 对照测试 + 对每个按钮记录 native LinuxCNC 的 status 序列: + - command 前状态 + - command 后第 1 个 task cycle + - motion 若干 servo cycle + - status 稳态 + WASM 用相同命令序列断言字段一致。 + +## 12. 对 `web-rtcp-5axis-xyzbc-trt-sim-plan` 的完善建议 + +该项目已有 `app/src/state/linuxcnc-task-policy.js` 和 `store.js`,并且已有主按钮对标文档和测试。下一步重点不是继续扩大 JS 语义,而是让 UI 更薄: + +1. 保留 `linuxcnc-task-policy.js` 作为 UI 门禁投影 + 它可以继续计算按钮 disabled 状态,但输入应优先来自 `taskHalRuntime.readStatus()`,而不是 store 自己推导。 + +2. `store.js` 的按钮动作只发 LinuxCNC 命令 + 例如: + - 急停:发 `{type:"EMC_TASK_SET_STATE", state:"ESTOP"}` + - 解除急停:发 `{type:"EMC_TASK_SET_STATE", state:"ESTOP_RESET"}` + - 上电:发 `{type:"EMC_TASK_SET_STATE", state:"ON"}` + - Home:发 `{type:"EMC_JOINT_HOME", joint:-1}` + - Run:发 `{type:"EMC_TASK_PLAN_RUN", line: programStartLine}` + - Pause:发 `{type:"EMC_TASK_PLAN_PAUSE"}` + - Resume:发 `{type:"EMC_TASK_PLAN_RESUME"}` + - Step:发 `{type:"EMC_TASK_PLAN_STEP"}` + 然后等待 status loop 回填,不在 reducer 中提前“宣布成功”。 + +3. 修正 Power 的 UI/回调双语义 + AXIS UI 禁用 ESTOP 下电源按钮;但 `onoff_clicked()` 若被直接调用且非 `ESTOP_RESET` 会发 OFF。Web 应: + - UI disabled 对标 `task_state == estop`。 + - 内部命令测试保留“直接调用 TOGGLE_POWER 时非 estop-reset -> OFF”的回调语义。 + +4. Home 状态不要直接 `allHomed=true` + 先作为过渡兼容可以保留,但应标记为 fallback。正式路径要从 WASM status 的 per-joint `homed[]` 汇总。 + +5. Pause/Resume 需要同时显示 task 与 motion 暂停 + LinuxCNC 中暂停状态由 `task.interpState=PAUSED`、`task.task_paused=1`、`motion.paused=1` 共同组成。Web UI 里的 `runState="paused"` 只能作为显示投影,不应是源状态。 + +6. Step 测试要覆盖三种状态 + - AUTO + IDLE:首次 Step 等价 run from start 后暂停。 + - AUTO + READING/WAITING:设置 task stepping,下一条/下一段后暂停。 + - AUTO + PAUSED 且 motion queue > 0:发 `EMCMOT_STEP`,motion id 改变后暂停。 + +7. 证据文件增加字段级 diff + 当前 evidence 可继续保留截图和 pass/fail;建议新增 JSON diff: + - `task.state/mode/interpState/execState/taskPaused` + - `motion.enabled/paused/stepping/id` + - `joint[].homed/homing/enabled/inpos` + - `currentLine/readLine/motionLine` + +## 13. 推荐验收用按钮序列 + +用于 native LinuxCNC、`wasm-port`、`web-rtcp` 三方对齐: + +```text +初始: ESTOP 或 ESTOP_RESET,MANUAL,IDLE +1. F1 reset estop -> ESTOP_RESET, motion disabled +2. F2 power on -> ON, motion enabled +3. Home All -> MANUAL/FREE, homing active, 最终 all_homed=true +4. Run -> AUTO, READING, exec 非 DONE 或 motion queue 活动 +5. Pause -> PAUSED, task_paused=1, motion.paused=1 +6. Step -> PAUSED 保持,motion id 或 currentLine 推进一个单位 +7. Resume -> READING/WAITING, paused 清零 +8. F1 estop during run -> ESTOP, abort, disabled, volatile home 清除 +``` + +每一步至少记录 command 前、command 后、若干 cycle 后三份 status。若 Web/WASM 只能在 UI 层改变状态而 status 无对应变化,应判定为未完全对标。 + +## 14. 结论 + +LinuxCNC 的主控制按钮不是独立 UI 逻辑,而是围绕 NML command/status、task 周期状态机、motion 实时状态机和 homing 状态机共同实现。移植时最重要的原则是: + +- UI 按钮只负责发送命令和展示 status。 +- task 状态由 IO estop、motion enabled、motion mode 推导。 +- Home 状态由 motion/homing.c 的 per-joint 状态机产生。 +- Pause/Resume/Step 必须同时维护 task interpreter 状态和 motion trajectory pause/step 状态。 +- Web/WASM 中所有 `allHomed/taskPaused/motionPaused/interpState/taskState` 最终都应来自 WASM LinuxCNC runtime status,而不是 JavaScript reducer 的乐观赋值。 +