17468 lines
474 KiB
JSON
17468 lines
474 KiB
JSON
{
|
|
"generatedAt": "2026-07-03T20:22:18.142Z",
|
|
"targetIntervalMs": 50,
|
|
"runtimeErrors": [],
|
|
"frameCount": 71,
|
|
"samples": [
|
|
{
|
|
"wallClock": "2026-07-03T20:22:08.922Z",
|
|
"perfNow": 1514.1000000014901,
|
|
"runState": "idle",
|
|
"mode": "manual",
|
|
"interpState": "idle",
|
|
"activeLine": 16,
|
|
"programElapsedSeconds": 0,
|
|
"programRemainingSeconds": 0,
|
|
"motionIndex": 0,
|
|
"sampleIndex": 0,
|
|
"programSourceMode": "linuxcnc-interpreter-wasm",
|
|
"executionSourceMode": "linuxcnc-task-motion-hal-wasm",
|
|
"motionCount": 0,
|
|
"message": "LinuxCNC machine-file remap run starting",
|
|
"task": {
|
|
"state": "ON",
|
|
"mode": "MANUAL",
|
|
"interpState": "IDLE",
|
|
"execState": "DONE",
|
|
"taskPaused": false,
|
|
"singleStepping": false,
|
|
"cycle": 3,
|
|
"openProgram": "/work/sim/axis/vismach/5axis/table-rotary-tilting/xyzbc-trt/demos/xyzbc_switchkins.ngc",
|
|
"openedLineCount": 3,
|
|
"openedSourceLineCount": 3,
|
|
"executableLineCount": 2,
|
|
"nextProgramLine": 0
|
|
},
|
|
"ui": {
|
|
"taskState": "on",
|
|
"taskMode": "manual",
|
|
"interpState": "idle",
|
|
"execState": "done",
|
|
"taskCycle": 0,
|
|
"servoCycle": 30,
|
|
"motionQueueDepth": 0,
|
|
"halChangedPinCount": 0,
|
|
"activeLine": 1,
|
|
"motionProgramLine": 1,
|
|
"halProgramLine": 1,
|
|
"activeLineSource": "motion-status",
|
|
"activeLineHalSynced": true,
|
|
"switchkinsType": 0,
|
|
"axisPose": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 0,
|
|
"a": 0,
|
|
"b": 0,
|
|
"c": 0
|
|
},
|
|
"axisPoseFrame": "work",
|
|
"currentVelocity": 3600
|
|
},
|
|
"feedback": {
|
|
"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": 16,
|
|
"motionProgramLine": 1,
|
|
"halProgramLine": 1,
|
|
"activeLineSource": "motion-status",
|
|
"activeLineHalSynced": true,
|
|
"type": "TASK_MOTION",
|
|
"timeSeconds": 0,
|
|
"axisPose": {
|
|
"x": 43,
|
|
"y": -32.15,
|
|
"z": -11.306,
|
|
"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,
|
|
"sourceFile": "xyzbc_switchkins_sub.ngc",
|
|
"statement": "g53 g0 x0y0 z#<zmax> b0 c0 ; quadrant I",
|
|
"motionType": "rapid",
|
|
"activeKinematics": "identity",
|
|
"tcp": {
|
|
"x": 43,
|
|
"y": -32.15,
|
|
"z": -11.306
|
|
},
|
|
"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
|
|
}
|
|
}
|
|
},
|
|
"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#<zmax> b0 c0 ; quadrant I",
|
|
"operation": "rapid-machine-reset",
|
|
"executionIndex": 2,
|
|
"gcodeStepIndex": 16,
|
|
"segmentIndex": 0,
|
|
"motionType": "rapid",
|
|
"activeKinematics": "identity",
|
|
"joint": {
|
|
"x": 43,
|
|
"y": -32.15,
|
|
"z": -11.306,
|
|
"a": 0,
|
|
"b": 0,
|
|
"c": 0
|
|
},
|
|
"tcp": {
|
|
"x": 43,
|
|
"y": -32.15,
|
|
"z": -11.306
|
|
},
|
|
"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"
|
|
},
|
|
"axisPose": {
|
|
"x": 43,
|
|
"y": -32.15,
|
|
"z": -11.306,
|
|
"a": 0,
|
|
"b": 0,
|
|
"c": 0
|
|
},
|
|
"tcpPose": {
|
|
"x": 43,
|
|
"y": -32.15,
|
|
"z": -11.306,
|
|
"a": 0,
|
|
"b": 0,
|
|
"c": 0
|
|
},
|
|
"toolAxisVector": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 1
|
|
},
|
|
"canvas": {
|
|
"toolhead": "{\"x\":0.043,\"y\":-0.032,\"z\":-0.011}",
|
|
"tcpPose": "{\"x\":43,\"y\":-32.15,\"z\":-11.306,\"a\":0,\"b\":0,\"c\":0}",
|
|
"toolAxis": "{\"x\":0,\"y\":0,\"z\":1}",
|
|
"executedPathPoints": "0",
|
|
"pathPoints": "1300"
|
|
},
|
|
"frame": "frame-0000.png",
|
|
"captureStartedMs": 1783110128919,
|
|
"captureDurationMs": 108,
|
|
"intervalSincePreviousMs": null
|
|
},
|
|
{
|
|
"wallClock": "2026-07-03T20:22:09.073Z",
|
|
"perfNow": 1664.9000000022352,
|
|
"runState": "idle",
|
|
"mode": "auto",
|
|
"interpState": "idle",
|
|
"activeLine": 16,
|
|
"programElapsedSeconds": 0.356,
|
|
"programRemainingSeconds": 61.10500000000001,
|
|
"motionIndex": 0,
|
|
"sampleIndex": 0,
|
|
"programSourceMode": "linuxcnc-machine-file-remap-wasm",
|
|
"executionSourceMode": "linuxcnc-machine-file-remap-wasm",
|
|
"motionCount": 29,
|
|
"message": "LinuxCNC task/HAL command running",
|
|
"task": {
|
|
"state": "ON",
|
|
"mode": "MANUAL",
|
|
"interpState": "IDLE",
|
|
"execState": "DONE",
|
|
"taskPaused": false,
|
|
"singleStepping": false,
|
|
"cycle": 3,
|
|
"openProgram": "/work/sim/axis/vismach/5axis/table-rotary-tilting/xyzbc-trt/demos/xyzbc_switchkins.ngc",
|
|
"openedLineCount": 3,
|
|
"openedSourceLineCount": 3,
|
|
"executableLineCount": 2,
|
|
"nextProgramLine": 0
|
|
},
|
|
"ui": {
|
|
"taskState": "on",
|
|
"taskMode": "manual",
|
|
"interpState": "idle",
|
|
"execState": "done",
|
|
"taskCycle": 0,
|
|
"servoCycle": 30,
|
|
"motionQueueDepth": 0,
|
|
"halChangedPinCount": 0,
|
|
"activeLine": 1,
|
|
"motionProgramLine": 1,
|
|
"halProgramLine": 1,
|
|
"activeLineSource": "motion-status",
|
|
"activeLineHalSynced": true,
|
|
"switchkinsType": 0,
|
|
"axisPose": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 0,
|
|
"a": 0,
|
|
"b": 0,
|
|
"c": 0
|
|
},
|
|
"axisPoseFrame": "work",
|
|
"currentVelocity": 3600
|
|
},
|
|
"feedback": {
|
|
"apiName": "web-rtcp-5axis-program-runtime-feedback",
|
|
"sourceMode": "linuxcnc-tp-runtime-sample",
|
|
"semanticBoundary": "linuxcnc_tp_run_cycle_feedback_without_hardware",
|
|
"sampleIndex": 0,
|
|
"motionIndex": 0,
|
|
"line": 16,
|
|
"type": "STRAIGHT_TRAVERSE",
|
|
"linearUnits": "mm",
|
|
"timeSeconds": 0.001,
|
|
"axisPose": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 10,
|
|
"a": 0,
|
|
"b": 0,
|
|
"c": 0
|
|
},
|
|
"currentVelocityMmPerMin": 30,
|
|
"requestedVelocityMmPerMin": 2100,
|
|
"distanceToGo": 9.99975,
|
|
"dtg": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 9.99975
|
|
},
|
|
"queueDepth": 29,
|
|
"activeDepth": 1,
|
|
"cycle": 1,
|
|
"sourceFile": "xyzbc_switchkins_sub.ngc",
|
|
"statement": "g53 g0 x0y0 z#<zmax> b0 c0 ; quadrant I",
|
|
"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
|
|
}
|
|
}
|
|
},
|
|
"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#<zmax> 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"
|
|
},
|
|
"axisPose": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 10,
|
|
"a": 0,
|
|
"b": 0,
|
|
"c": 0
|
|
},
|
|
"tcpPose": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": -74.019,
|
|
"a": 0,
|
|
"b": 0,
|
|
"c": 0
|
|
},
|
|
"toolAxisVector": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 1
|
|
},
|
|
"canvas": {
|
|
"toolhead": "{\"x\":0,\"y\":0,\"z\":0.01}",
|
|
"tcpPose": "{\"x\":0,\"y\":0,\"z\":-74.019,\"a\":0,\"b\":0,\"c\":0}",
|
|
"toolAxis": "{\"x\":0,\"y\":0,\"z\":1}",
|
|
"executedPathPoints": "0",
|
|
"pathPoints": "1300"
|
|
},
|
|
"frame": "frame-0001.png",
|
|
"captureStartedMs": 1783110129027,
|
|
"captureDurationMs": 195,
|
|
"intervalSincePreviousMs": 108
|
|
},
|
|
{
|
|
"wallClock": "2026-07-03T20:22:09.227Z",
|
|
"perfNow": 1818.6000000014901,
|
|
"runState": "running",
|
|
"mode": "auto",
|
|
"interpState": "reading",
|
|
"activeLine": 16,
|
|
"programElapsedSeconds": 0.356,
|
|
"programRemainingSeconds": 61.10500000000001,
|
|
"motionIndex": 0,
|
|
"sampleIndex": 0,
|
|
"programSourceMode": "linuxcnc-machine-file-remap-wasm",
|
|
"executionSourceMode": "linuxcnc-task-motion-hal-wasm",
|
|
"motionCount": 29,
|
|
"message": "task/HAL status tick 2",
|
|
"task": {
|
|
"state": "ON",
|
|
"mode": "AUTO",
|
|
"interpState": "READING",
|
|
"execState": "WAITING_FOR_MOTION",
|
|
"taskPaused": false,
|
|
"singleStepping": false,
|
|
"cycle": 18,
|
|
"openProgram": "/work/sim/axis/vismach/5axis/table-rotary-tilting/xyzbc-trt/demos/xyzbc_switchkins.ngc",
|
|
"openedLineCount": 3,
|
|
"openedSourceLineCount": 44,
|
|
"executableLineCount": 2,
|
|
"nextProgramLine": 16
|
|
},
|
|
"ui": {
|
|
"taskState": "on",
|
|
"taskMode": "auto",
|
|
"interpState": "reading",
|
|
"execState": "waiting_for_motion",
|
|
"taskCycle": 0,
|
|
"servoCycle": 180,
|
|
"motionQueueDepth": 0,
|
|
"halChangedPinCount": 0,
|
|
"activeLine": 16,
|
|
"motionProgramLine": 16,
|
|
"halProgramLine": 16,
|
|
"activeLineSource": "motion-status",
|
|
"activeLineHalSynced": true,
|
|
"switchkinsType": 0,
|
|
"axisPose": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 4.21348,
|
|
"a": 0,
|
|
"b": 0,
|
|
"c": 0
|
|
},
|
|
"axisPoseFrame": "work",
|
|
"currentVelocity": 2100
|
|
},
|
|
"feedback": {
|
|
"apiName": "web-rtcp-5axis-program-runtime-feedback",
|
|
"sourceMode": "linuxcnc-task-motion-hal-wasm",
|
|
"semanticBoundary": "linuxcnc_task_motion_hal_wasm_simulation_runtime",
|
|
"sampleIndex": 0,
|
|
"motionIndex": 15,
|
|
"line": 16,
|
|
"motionProgramLine": 16,
|
|
"halProgramLine": 16,
|
|
"activeLineSource": "motion-status",
|
|
"activeLineHalSynced": true,
|
|
"type": "TASK_MOTION",
|
|
"timeSeconds": 0,
|
|
"axisPose": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 4.21348,
|
|
"a": 0,
|
|
"b": 0,
|
|
"c": 0
|
|
},
|
|
"currentVelocityMmPerMin": 2100,
|
|
"requestedVelocityMmPerMin": 2100,
|
|
"distanceToGo": 0,
|
|
"dtg": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 0
|
|
},
|
|
"queueDepth": 0,
|
|
"activeDepth": 0,
|
|
"cycle": 180,
|
|
"taskCycle": 18,
|
|
"halChangedPinCount": 0,
|
|
"sourceFile": "xyzbc_switchkins_sub.ngc",
|
|
"statement": "g53 g0 x0y0 z#<zmax> b0 c0 ; quadrant I",
|
|
"motionType": "rapid",
|
|
"activeKinematics": "identity",
|
|
"tcp": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 2.80899
|
|
},
|
|
"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
|
|
}
|
|
}
|
|
},
|
|
"programUiExecution": {
|
|
"apiName": "web-rtcp-5axis-ui-gcode-live-execution",
|
|
"status": "running",
|
|
"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#<zmax> b0 c0 ; quadrant I",
|
|
"operation": "rapid-machine-reset",
|
|
"executionIndex": 2,
|
|
"gcodeStepIndex": 16,
|
|
"segmentIndex": 0,
|
|
"motionType": "rapid",
|
|
"activeKinematics": "identity",
|
|
"joint": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 4.21348,
|
|
"a": 0,
|
|
"b": 0,
|
|
"c": 0
|
|
},
|
|
"tcp": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 2.80899
|
|
},
|
|
"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"
|
|
},
|
|
"axisPose": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 4.21348,
|
|
"a": 0,
|
|
"b": 0,
|
|
"c": 0
|
|
},
|
|
"tcpPose": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 4.21348,
|
|
"a": 0,
|
|
"b": 0,
|
|
"c": 0
|
|
},
|
|
"toolAxisVector": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 1
|
|
},
|
|
"canvas": {
|
|
"toolhead": "{\"x\":0,\"y\":0,\"z\":0.003}",
|
|
"tcpPose": "{\"x\":0,\"y\":0,\"z\":4.213,\"a\":0,\"b\":0,\"c\":0}",
|
|
"toolAxis": "{\"x\":0,\"y\":0,\"z\":1}",
|
|
"executedPathPoints": "0",
|
|
"pathPoints": "1300"
|
|
},
|
|
"frame": "frame-0002.png",
|
|
"captureStartedMs": 1783110129222,
|
|
"captureDurationMs": 104,
|
|
"intervalSincePreviousMs": 195
|
|
},
|
|
{
|
|
"wallClock": "2026-07-03T20:22:09.336Z",
|
|
"perfNow": 1928.1000000014901,
|
|
"runState": "running",
|
|
"mode": "auto",
|
|
"interpState": "reading",
|
|
"activeLine": 16,
|
|
"programElapsedSeconds": 0.356,
|
|
"programRemainingSeconds": 61.10500000000001,
|
|
"motionIndex": 0,
|
|
"sampleIndex": 0,
|
|
"programSourceMode": "linuxcnc-machine-file-remap-wasm",
|
|
"executionSourceMode": "linuxcnc-task-motion-hal-wasm",
|
|
"motionCount": 29,
|
|
"message": "task/HAL status tick 5",
|
|
"task": {
|
|
"state": "ON",
|
|
"mode": "AUTO",
|
|
"interpState": "READING",
|
|
"execState": "WAITING_FOR_MOTION",
|
|
"taskPaused": false,
|
|
"singleStepping": false,
|
|
"cycle": 33,
|
|
"openProgram": "/work/sim/axis/vismach/5axis/table-rotary-tilting/xyzbc-trt/demos/xyzbc_switchkins.ngc",
|
|
"openedLineCount": 3,
|
|
"openedSourceLineCount": 44,
|
|
"executableLineCount": 2,
|
|
"nextProgramLine": 16
|
|
},
|
|
"ui": {
|
|
"taskState": "on",
|
|
"taskMode": "auto",
|
|
"interpState": "reading",
|
|
"execState": "waiting_for_motion",
|
|
"taskCycle": 0,
|
|
"servoCycle": 330,
|
|
"motionQueueDepth": 0,
|
|
"halChangedPinCount": 0,
|
|
"activeLine": 16,
|
|
"motionProgramLine": 16,
|
|
"halProgramLine": 16,
|
|
"activeLineSource": "motion-status",
|
|
"activeLineHalSynced": true,
|
|
"switchkinsType": 0,
|
|
"axisPose": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 8.42697,
|
|
"a": 0,
|
|
"b": 0,
|
|
"c": 0
|
|
},
|
|
"axisPoseFrame": "work",
|
|
"currentVelocity": 2100
|
|
},
|
|
"feedback": {
|
|
"apiName": "web-rtcp-5axis-program-runtime-feedback",
|
|
"sourceMode": "linuxcnc-task-motion-hal-wasm",
|
|
"semanticBoundary": "linuxcnc_task_motion_hal_wasm_simulation_runtime",
|
|
"sampleIndex": 0,
|
|
"motionIndex": 15,
|
|
"line": 16,
|
|
"motionProgramLine": 16,
|
|
"halProgramLine": 16,
|
|
"activeLineSource": "motion-status",
|
|
"activeLineHalSynced": true,
|
|
"type": "TASK_MOTION",
|
|
"timeSeconds": 0,
|
|
"axisPose": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 8.42697,
|
|
"a": 0,
|
|
"b": 0,
|
|
"c": 0
|
|
},
|
|
"currentVelocityMmPerMin": 2100,
|
|
"requestedVelocityMmPerMin": 2100,
|
|
"distanceToGo": 0,
|
|
"dtg": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 0
|
|
},
|
|
"queueDepth": 0,
|
|
"activeDepth": 0,
|
|
"cycle": 330,
|
|
"taskCycle": 33,
|
|
"halChangedPinCount": 0,
|
|
"sourceFile": "xyzbc_switchkins_sub.ngc",
|
|
"statement": "g53 g0 x0y0 z#<zmax> b0 c0 ; quadrant I",
|
|
"motionType": "rapid",
|
|
"activeKinematics": "identity",
|
|
"tcp": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 7.02247
|
|
},
|
|
"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
|
|
}
|
|
}
|
|
},
|
|
"programUiExecution": {
|
|
"apiName": "web-rtcp-5axis-ui-gcode-live-execution",
|
|
"status": "running",
|
|
"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#<zmax> b0 c0 ; quadrant I",
|
|
"operation": "rapid-machine-reset",
|
|
"executionIndex": 2,
|
|
"gcodeStepIndex": 16,
|
|
"segmentIndex": 0,
|
|
"motionType": "rapid",
|
|
"activeKinematics": "identity",
|
|
"joint": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 8.42697,
|
|
"a": 0,
|
|
"b": 0,
|
|
"c": 0
|
|
},
|
|
"tcp": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 7.02247
|
|
},
|
|
"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"
|
|
},
|
|
"axisPose": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 8.42697,
|
|
"a": 0,
|
|
"b": 0,
|
|
"c": 0
|
|
},
|
|
"tcpPose": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 8.42697,
|
|
"a": 0,
|
|
"b": 0,
|
|
"c": 0
|
|
},
|
|
"toolAxisVector": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 1
|
|
},
|
|
"canvas": {
|
|
"toolhead": "{\"x\":0,\"y\":0,\"z\":0.007}",
|
|
"tcpPose": "{\"x\":0,\"y\":0,\"z\":8.427,\"a\":0,\"b\":0,\"c\":0}",
|
|
"toolAxis": "{\"x\":0,\"y\":0,\"z\":1}",
|
|
"executedPathPoints": "0",
|
|
"pathPoints": "1300"
|
|
},
|
|
"frame": "frame-0003.png",
|
|
"captureStartedMs": 1783110129326,
|
|
"captureDurationMs": 129,
|
|
"intervalSincePreviousMs": 104
|
|
},
|
|
{
|
|
"wallClock": "2026-07-03T20:22:09.471Z",
|
|
"perfNow": 2062.7000000029802,
|
|
"runState": "running",
|
|
"mode": "auto",
|
|
"interpState": "reading",
|
|
"activeLine": 18,
|
|
"programElapsedSeconds": 0.356,
|
|
"programRemainingSeconds": 61.10500000000001,
|
|
"motionIndex": 1,
|
|
"sampleIndex": 1,
|
|
"programSourceMode": "linuxcnc-machine-file-remap-wasm",
|
|
"executionSourceMode": "linuxcnc-task-motion-hal-wasm",
|
|
"motionCount": 29,
|
|
"message": "task/HAL status tick 9",
|
|
"task": {
|
|
"state": "ON",
|
|
"mode": "AUTO",
|
|
"interpState": "READING",
|
|
"execState": "WAITING_FOR_MOTION",
|
|
"taskPaused": false,
|
|
"singleStepping": false,
|
|
"cycle": 53,
|
|
"openProgram": "/work/sim/axis/vismach/5axis/table-rotary-tilting/xyzbc-trt/demos/xyzbc_switchkins.ngc",
|
|
"openedLineCount": 3,
|
|
"openedSourceLineCount": 44,
|
|
"executableLineCount": 2,
|
|
"nextProgramLine": 18
|
|
},
|
|
"ui": {
|
|
"taskState": "on",
|
|
"taskMode": "auto",
|
|
"interpState": "reading",
|
|
"execState": "waiting_for_motion",
|
|
"taskCycle": 0,
|
|
"servoCycle": 530,
|
|
"motionQueueDepth": 0,
|
|
"halChangedPinCount": 0,
|
|
"activeLine": 18,
|
|
"motionProgramLine": 18,
|
|
"halProgramLine": 18,
|
|
"activeLineSource": "motion-status",
|
|
"activeLineHalSynced": true,
|
|
"switchkinsType": 0,
|
|
"axisPose": {
|
|
"x": 11.3766,
|
|
"y": 11.3766,
|
|
"z": 10,
|
|
"a": 0,
|
|
"b": 0,
|
|
"c": 0
|
|
},
|
|
"axisPoseFrame": "work",
|
|
"currentVelocity": 2100
|
|
},
|
|
"feedback": {
|
|
"apiName": "web-rtcp-5axis-program-runtime-feedback",
|
|
"sourceMode": "linuxcnc-task-motion-hal-wasm",
|
|
"semanticBoundary": "linuxcnc_task_motion_hal_wasm_simulation_runtime",
|
|
"sampleIndex": 1,
|
|
"motionIndex": 1,
|
|
"line": 18,
|
|
"motionProgramLine": 18,
|
|
"halProgramLine": 18,
|
|
"activeLineSource": "motion-status",
|
|
"activeLineHalSynced": true,
|
|
"type": "TASK_MOTION",
|
|
"timeSeconds": 0,
|
|
"axisPose": {
|
|
"x": 11.3766,
|
|
"y": 11.3766,
|
|
"z": 10,
|
|
"a": 0,
|
|
"b": 0,
|
|
"c": 0
|
|
},
|
|
"currentVelocityMmPerMin": 2100,
|
|
"requestedVelocityMmPerMin": 2100,
|
|
"distanceToGo": 0,
|
|
"dtg": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 0
|
|
},
|
|
"queueDepth": 0,
|
|
"activeDepth": 0,
|
|
"cycle": 530,
|
|
"taskCycle": 53,
|
|
"halChangedPinCount": 0,
|
|
"sourceFile": "xyzbc_switchkins_sub.ngc",
|
|
"statement": "g0 x+20 y+20 z#<zmax>",
|
|
"motionType": "rapid",
|
|
"activeKinematics": "identity",
|
|
"tcp": {
|
|
"x": 10.2389,
|
|
"y": 10.2389,
|
|
"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
|
|
}
|
|
}
|
|
},
|
|
"programUiExecution": {
|
|
"apiName": "web-rtcp-5axis-ui-gcode-live-execution",
|
|
"status": "running",
|
|
"source": "programAxisPreviewPath.samples",
|
|
"samplePeriodMs": 50,
|
|
"sampleIndex": 1,
|
|
"sampleCount": 1300,
|
|
"executedSampleCount": 2,
|
|
"timeMs": 50,
|
|
"activeProgram": "configs/sim/axis/vismach/5axis/table-rotary-tilting/demos/xyzbc_switchkins.ngc",
|
|
"sourceFile": "xyzbc_switchkins_sub.ngc",
|
|
"line": 18,
|
|
"statement": "g0 x+20 y+20 z#<zmax>",
|
|
"operation": "rapid-to-quadrant-center",
|
|
"executionIndex": 4,
|
|
"gcodeStepIndex": 18,
|
|
"segmentIndex": 1,
|
|
"motionType": "rapid",
|
|
"activeKinematics": "identity",
|
|
"joint": {
|
|
"x": 11.3766,
|
|
"y": 11.3766,
|
|
"z": 10,
|
|
"a": 0,
|
|
"b": 0,
|
|
"c": 0
|
|
},
|
|
"tcp": {
|
|
"x": 10.2389,
|
|
"y": 10.2389,
|
|
"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"
|
|
},
|
|
"axisPose": {
|
|
"x": 11.3766,
|
|
"y": 11.3766,
|
|
"z": 10,
|
|
"a": 0,
|
|
"b": 0,
|
|
"c": 0
|
|
},
|
|
"tcpPose": {
|
|
"x": 11.3766,
|
|
"y": 11.3766,
|
|
"z": 10,
|
|
"a": 0,
|
|
"b": 0,
|
|
"c": 0
|
|
},
|
|
"toolAxisVector": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 1
|
|
},
|
|
"canvas": {
|
|
"toolhead": "{\"x\":0.01,\"y\":0.01,\"z\":0.01}",
|
|
"tcpPose": "{\"x\":11.377,\"y\":11.377,\"z\":10,\"a\":0,\"b\":0,\"c\":0}",
|
|
"toolAxis": "{\"x\":0,\"y\":0,\"z\":1}",
|
|
"executedPathPoints": "0",
|
|
"pathPoints": "1300"
|
|
},
|
|
"frame": "frame-0004.png",
|
|
"captureStartedMs": 1783110129455,
|
|
"captureDurationMs": 154,
|
|
"intervalSincePreviousMs": 129
|
|
},
|
|
{
|
|
"wallClock": "2026-07-03T20:22:09.610Z",
|
|
"perfNow": 2201.800000000745,
|
|
"runState": "running",
|
|
"mode": "auto",
|
|
"interpState": "reading",
|
|
"activeLine": 18,
|
|
"programElapsedSeconds": 0.356,
|
|
"programRemainingSeconds": 61.10500000000001,
|
|
"motionIndex": 1,
|
|
"sampleIndex": 1,
|
|
"programSourceMode": "linuxcnc-machine-file-remap-wasm",
|
|
"executionSourceMode": "linuxcnc-task-motion-hal-wasm",
|
|
"motionCount": 29,
|
|
"message": "task/HAL status tick 12",
|
|
"task": {
|
|
"state": "ON",
|
|
"mode": "AUTO",
|
|
"interpState": "READING",
|
|
"execState": "WAITING_FOR_MOTION",
|
|
"taskPaused": false,
|
|
"singleStepping": false,
|
|
"cycle": 68,
|
|
"openProgram": "/work/sim/axis/vismach/5axis/table-rotary-tilting/xyzbc-trt/demos/xyzbc_switchkins.ngc",
|
|
"openedLineCount": 3,
|
|
"openedSourceLineCount": 44,
|
|
"executableLineCount": 2,
|
|
"nextProgramLine": 18
|
|
},
|
|
"ui": {
|
|
"taskState": "on",
|
|
"taskMode": "auto",
|
|
"interpState": "reading",
|
|
"execState": "waiting_for_motion",
|
|
"taskCycle": 0,
|
|
"servoCycle": 680,
|
|
"motionQueueDepth": 0,
|
|
"halChangedPinCount": 0,
|
|
"activeLine": 18,
|
|
"motionProgramLine": 18,
|
|
"halProgramLine": 18,
|
|
"activeLineSource": "motion-status",
|
|
"activeLineHalSynced": true,
|
|
"switchkinsType": 0,
|
|
"axisPose": {
|
|
"x": 14.7895,
|
|
"y": 14.7895,
|
|
"z": 10,
|
|
"a": 0,
|
|
"b": 0,
|
|
"c": 0
|
|
},
|
|
"axisPoseFrame": "work",
|
|
"currentVelocity": 2100
|
|
},
|
|
"feedback": {
|
|
"apiName": "web-rtcp-5axis-program-runtime-feedback",
|
|
"sourceMode": "linuxcnc-task-motion-hal-wasm",
|
|
"semanticBoundary": "linuxcnc_task_motion_hal_wasm_simulation_runtime",
|
|
"sampleIndex": 1,
|
|
"motionIndex": 1,
|
|
"line": 18,
|
|
"motionProgramLine": 18,
|
|
"halProgramLine": 18,
|
|
"activeLineSource": "motion-status",
|
|
"activeLineHalSynced": true,
|
|
"type": "TASK_MOTION",
|
|
"timeSeconds": 0,
|
|
"axisPose": {
|
|
"x": 14.7895,
|
|
"y": 14.7895,
|
|
"z": 10,
|
|
"a": 0,
|
|
"b": 0,
|
|
"c": 0
|
|
},
|
|
"currentVelocityMmPerMin": 2100,
|
|
"requestedVelocityMmPerMin": 2100,
|
|
"distanceToGo": 0,
|
|
"dtg": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 0
|
|
},
|
|
"queueDepth": 0,
|
|
"activeDepth": 0,
|
|
"cycle": 680,
|
|
"taskCycle": 68,
|
|
"halChangedPinCount": 0,
|
|
"sourceFile": "xyzbc_switchkins_sub.ngc",
|
|
"statement": "g0 x+20 y+20 z#<zmax>",
|
|
"motionType": "rapid",
|
|
"activeKinematics": "identity",
|
|
"tcp": {
|
|
"x": 13.6519,
|
|
"y": 13.6519,
|
|
"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
|
|
}
|
|
}
|
|
},
|
|
"programUiExecution": {
|
|
"apiName": "web-rtcp-5axis-ui-gcode-live-execution",
|
|
"status": "running",
|
|
"source": "programAxisPreviewPath.samples",
|
|
"samplePeriodMs": 50,
|
|
"sampleIndex": 1,
|
|
"sampleCount": 1300,
|
|
"executedSampleCount": 2,
|
|
"timeMs": 50,
|
|
"activeProgram": "configs/sim/axis/vismach/5axis/table-rotary-tilting/demos/xyzbc_switchkins.ngc",
|
|
"sourceFile": "xyzbc_switchkins_sub.ngc",
|
|
"line": 18,
|
|
"statement": "g0 x+20 y+20 z#<zmax>",
|
|
"operation": "rapid-to-quadrant-center",
|
|
"executionIndex": 4,
|
|
"gcodeStepIndex": 18,
|
|
"segmentIndex": 1,
|
|
"motionType": "rapid",
|
|
"activeKinematics": "identity",
|
|
"joint": {
|
|
"x": 14.7895,
|
|
"y": 14.7895,
|
|
"z": 10,
|
|
"a": 0,
|
|
"b": 0,
|
|
"c": 0
|
|
},
|
|
"tcp": {
|
|
"x": 13.6519,
|
|
"y": 13.6519,
|
|
"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"
|
|
},
|
|
"axisPose": {
|
|
"x": 14.7895,
|
|
"y": 14.7895,
|
|
"z": 10,
|
|
"a": 0,
|
|
"b": 0,
|
|
"c": 0
|
|
},
|
|
"tcpPose": {
|
|
"x": 14.7895,
|
|
"y": 14.7895,
|
|
"z": 10,
|
|
"a": 0,
|
|
"b": 0,
|
|
"c": 0
|
|
},
|
|
"toolAxisVector": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 1
|
|
},
|
|
"canvas": {
|
|
"toolhead": "{\"x\":0.014,\"y\":0.014,\"z\":0.01}",
|
|
"tcpPose": "{\"x\":14.79,\"y\":14.79,\"z\":10,\"a\":0,\"b\":0,\"c\":0}",
|
|
"toolAxis": "{\"x\":0,\"y\":0,\"z\":1}",
|
|
"executedPathPoints": "0",
|
|
"pathPoints": "1300"
|
|
},
|
|
"frame": "frame-0005.png",
|
|
"captureStartedMs": 1783110129609,
|
|
"captureDurationMs": 112,
|
|
"intervalSincePreviousMs": 154
|
|
},
|
|
{
|
|
"wallClock": "2026-07-03T20:22:09.727Z",
|
|
"perfNow": 2319.300000000745,
|
|
"runState": "running",
|
|
"mode": "auto",
|
|
"interpState": "reading",
|
|
"activeLine": 18,
|
|
"programElapsedSeconds": 0.356,
|
|
"programRemainingSeconds": 61.10500000000001,
|
|
"motionIndex": 1,
|
|
"sampleIndex": 1,
|
|
"programSourceMode": "linuxcnc-machine-file-remap-wasm",
|
|
"executionSourceMode": "linuxcnc-task-motion-hal-wasm",
|
|
"motionCount": 29,
|
|
"message": "task/HAL status tick 15",
|
|
"task": {
|
|
"state": "ON",
|
|
"mode": "AUTO",
|
|
"interpState": "READING",
|
|
"execState": "WAITING_FOR_MOTION",
|
|
"taskPaused": false,
|
|
"singleStepping": false,
|
|
"cycle": 83,
|
|
"openProgram": "/work/sim/axis/vismach/5axis/table-rotary-tilting/xyzbc-trt/demos/xyzbc_switchkins.ngc",
|
|
"openedLineCount": 3,
|
|
"openedSourceLineCount": 44,
|
|
"executableLineCount": 2,
|
|
"nextProgramLine": 18
|
|
},
|
|
"ui": {
|
|
"taskState": "on",
|
|
"taskMode": "auto",
|
|
"interpState": "reading",
|
|
"execState": "waiting_for_motion",
|
|
"taskCycle": 0,
|
|
"servoCycle": 830,
|
|
"motionQueueDepth": 0,
|
|
"halChangedPinCount": 0,
|
|
"activeLine": 18,
|
|
"motionProgramLine": 18,
|
|
"halProgramLine": 18,
|
|
"activeLineSource": "motion-status",
|
|
"activeLineHalSynced": true,
|
|
"switchkinsType": 0,
|
|
"axisPose": {
|
|
"x": 18.2025,
|
|
"y": 18.2025,
|
|
"z": 10,
|
|
"a": 0,
|
|
"b": 0,
|
|
"c": 0
|
|
},
|
|
"axisPoseFrame": "work",
|
|
"currentVelocity": 2100
|
|
},
|
|
"feedback": {
|
|
"apiName": "web-rtcp-5axis-program-runtime-feedback",
|
|
"sourceMode": "linuxcnc-task-motion-hal-wasm",
|
|
"semanticBoundary": "linuxcnc_task_motion_hal_wasm_simulation_runtime",
|
|
"sampleIndex": 1,
|
|
"motionIndex": 1,
|
|
"line": 18,
|
|
"motionProgramLine": 18,
|
|
"halProgramLine": 18,
|
|
"activeLineSource": "motion-status",
|
|
"activeLineHalSynced": true,
|
|
"type": "TASK_MOTION",
|
|
"timeSeconds": 0,
|
|
"axisPose": {
|
|
"x": 18.2025,
|
|
"y": 18.2025,
|
|
"z": 10,
|
|
"a": 0,
|
|
"b": 0,
|
|
"c": 0
|
|
},
|
|
"currentVelocityMmPerMin": 2100,
|
|
"requestedVelocityMmPerMin": 2100,
|
|
"distanceToGo": 0,
|
|
"dtg": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 0
|
|
},
|
|
"queueDepth": 0,
|
|
"activeDepth": 0,
|
|
"cycle": 830,
|
|
"taskCycle": 83,
|
|
"halChangedPinCount": 0,
|
|
"sourceFile": "xyzbc_switchkins_sub.ngc",
|
|
"statement": "g0 x+20 y+20 z#<zmax>",
|
|
"motionType": "rapid",
|
|
"activeKinematics": "identity",
|
|
"tcp": {
|
|
"x": 17.0648,
|
|
"y": 17.0648,
|
|
"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
|
|
}
|
|
}
|
|
},
|
|
"programUiExecution": {
|
|
"apiName": "web-rtcp-5axis-ui-gcode-live-execution",
|
|
"status": "running",
|
|
"source": "programAxisPreviewPath.samples",
|
|
"samplePeriodMs": 50,
|
|
"sampleIndex": 1,
|
|
"sampleCount": 1300,
|
|
"executedSampleCount": 2,
|
|
"timeMs": 50,
|
|
"activeProgram": "configs/sim/axis/vismach/5axis/table-rotary-tilting/demos/xyzbc_switchkins.ngc",
|
|
"sourceFile": "xyzbc_switchkins_sub.ngc",
|
|
"line": 18,
|
|
"statement": "g0 x+20 y+20 z#<zmax>",
|
|
"operation": "rapid-to-quadrant-center",
|
|
"executionIndex": 4,
|
|
"gcodeStepIndex": 18,
|
|
"segmentIndex": 1,
|
|
"motionType": "rapid",
|
|
"activeKinematics": "identity",
|
|
"joint": {
|
|
"x": 18.2025,
|
|
"y": 18.2025,
|
|
"z": 10,
|
|
"a": 0,
|
|
"b": 0,
|
|
"c": 0
|
|
},
|
|
"tcp": {
|
|
"x": 17.0648,
|
|
"y": 17.0648,
|
|
"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"
|
|
},
|
|
"axisPose": {
|
|
"x": 18.2025,
|
|
"y": 18.2025,
|
|
"z": 10,
|
|
"a": 0,
|
|
"b": 0,
|
|
"c": 0
|
|
},
|
|
"tcpPose": {
|
|
"x": 18.2025,
|
|
"y": 18.2025,
|
|
"z": 10,
|
|
"a": 0,
|
|
"b": 0,
|
|
"c": 0
|
|
},
|
|
"toolAxisVector": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 1
|
|
},
|
|
"canvas": {
|
|
"toolhead": "{\"x\":0.017,\"y\":0.017,\"z\":0.01}",
|
|
"tcpPose": "{\"x\":18.203,\"y\":18.203,\"z\":10,\"a\":0,\"b\":0,\"c\":0}",
|
|
"toolAxis": "{\"x\":0,\"y\":0,\"z\":1}",
|
|
"executedPathPoints": "0",
|
|
"pathPoints": "1300"
|
|
},
|
|
"frame": "frame-0006.png",
|
|
"captureStartedMs": 1783110129721,
|
|
"captureDurationMs": 136,
|
|
"intervalSincePreviousMs": 112
|
|
},
|
|
{
|
|
"wallClock": "2026-07-03T20:22:09.867Z",
|
|
"perfNow": 2459.300000000745,
|
|
"runState": "running",
|
|
"mode": "auto",
|
|
"interpState": "reading",
|
|
"activeLine": 18,
|
|
"programElapsedSeconds": 0.356,
|
|
"programRemainingSeconds": 61.10500000000001,
|
|
"motionIndex": 1,
|
|
"sampleIndex": 1,
|
|
"programSourceMode": "linuxcnc-machine-file-remap-wasm",
|
|
"executionSourceMode": "linuxcnc-task-motion-hal-wasm",
|
|
"motionCount": 29,
|
|
"message": "task/HAL status tick 19",
|
|
"task": {
|
|
"state": "ON",
|
|
"mode": "AUTO",
|
|
"interpState": "READING",
|
|
"execState": "WAITING_FOR_MOTION",
|
|
"taskPaused": false,
|
|
"singleStepping": false,
|
|
"cycle": 103,
|
|
"openProgram": "/work/sim/axis/vismach/5axis/table-rotary-tilting/xyzbc-trt/demos/xyzbc_switchkins.ngc",
|
|
"openedLineCount": 3,
|
|
"openedSourceLineCount": 44,
|
|
"executableLineCount": 2,
|
|
"nextProgramLine": 17
|
|
},
|
|
"ui": {
|
|
"taskState": "on",
|
|
"taskMode": "auto",
|
|
"interpState": "reading",
|
|
"execState": "waiting_for_motion",
|
|
"taskCycle": 0,
|
|
"servoCycle": 1030,
|
|
"motionQueueDepth": 0,
|
|
"halChangedPinCount": 0,
|
|
"activeLine": 17,
|
|
"motionProgramLine": 17,
|
|
"halProgramLine": 17,
|
|
"activeLineSource": "motion-status",
|
|
"activeLineHalSynced": true,
|
|
"switchkinsType": 0,
|
|
"axisPose": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 9.55939,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"axisPoseFrame": "work",
|
|
"currentVelocity": 1000.002
|
|
},
|
|
"feedback": {
|
|
"apiName": "web-rtcp-5axis-program-runtime-feedback",
|
|
"sourceMode": "linuxcnc-task-motion-hal-wasm",
|
|
"semanticBoundary": "linuxcnc_task_motion_hal_wasm_simulation_runtime",
|
|
"sampleIndex": 1,
|
|
"motionIndex": 1,
|
|
"line": 18,
|
|
"motionProgramLine": 17,
|
|
"halProgramLine": 17,
|
|
"activeLineSource": "motion-status",
|
|
"activeLineHalSynced": true,
|
|
"type": "TASK_MOTION",
|
|
"timeSeconds": 0,
|
|
"axisPose": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 9.55939,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"currentVelocityMmPerMin": 1000.002,
|
|
"requestedVelocityMmPerMin": 1000.002,
|
|
"distanceToGo": 0,
|
|
"dtg": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 0
|
|
},
|
|
"queueDepth": 0,
|
|
"activeDepth": 0,
|
|
"cycle": 1030,
|
|
"taskCycle": 103,
|
|
"halChangedPinCount": 0,
|
|
"sourceFile": "xyzbc_switchkins_sub.ngc",
|
|
"statement": "g0 x+20 y+20 z#<zmax>",
|
|
"motionType": "rapid",
|
|
"activeKinematics": "identity",
|
|
"tcp": {
|
|
"x": -2.317216245730563,
|
|
"y": 2.3172162457305627,
|
|
"z": 9.003589670650518
|
|
},
|
|
"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
|
|
}
|
|
}
|
|
},
|
|
"programUiExecution": {
|
|
"apiName": "web-rtcp-5axis-ui-gcode-live-execution",
|
|
"status": "running",
|
|
"source": "programAxisPreviewPath.samples",
|
|
"samplePeriodMs": 50,
|
|
"sampleIndex": 1,
|
|
"sampleCount": 1300,
|
|
"executedSampleCount": 2,
|
|
"timeMs": 50,
|
|
"activeProgram": "configs/sim/axis/vismach/5axis/table-rotary-tilting/demos/xyzbc_switchkins.ngc",
|
|
"sourceFile": "xyzbc_switchkins_sub.ngc",
|
|
"line": 18,
|
|
"statement": "g0 x+20 y+20 z#<zmax>",
|
|
"operation": "rapid-to-quadrant-center",
|
|
"executionIndex": 4,
|
|
"gcodeStepIndex": 18,
|
|
"segmentIndex": 1,
|
|
"motionType": "rapid",
|
|
"activeKinematics": "identity",
|
|
"joint": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 9.55939,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"tcp": {
|
|
"x": -2.317216245730563,
|
|
"y": 2.3172162457305627,
|
|
"z": 9.003589670650518
|
|
},
|
|
"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"
|
|
},
|
|
"axisPose": {
|
|
"x": -2.3118884056094284,
|
|
"y": 2.311888405609428,
|
|
"z": 8.982888242214605,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"tcpPose": {
|
|
"x": -2.3118884056094284,
|
|
"y": 2.311888405609428,
|
|
"z": 8.982888242214605,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"toolAxisVector": {
|
|
"x": 0.24184476264797528,
|
|
"y": 0.24184476264797522,
|
|
"z": 0.9396926207859084
|
|
},
|
|
"canvas": {
|
|
"toolhead": "{\"x\":-0.002,\"y\":0.002,\"z\":0.009}",
|
|
"tcpPose": "{\"x\":-2.312,\"y\":2.312,\"z\":8.983,\"a\":0,\"b\":20,\"c\":45}",
|
|
"toolAxis": "{\"x\":0.242,\"y\":0.242,\"z\":0.94}",
|
|
"executedPathPoints": "0",
|
|
"pathPoints": "1300"
|
|
},
|
|
"frame": "frame-0007.png",
|
|
"captureStartedMs": 1783110129857,
|
|
"captureDurationMs": 123,
|
|
"intervalSincePreviousMs": 136
|
|
},
|
|
{
|
|
"wallClock": "2026-07-03T20:22:09.984Z",
|
|
"perfNow": 2576.400000002235,
|
|
"runState": "running",
|
|
"mode": "auto",
|
|
"interpState": "reading",
|
|
"activeLine": 18,
|
|
"programElapsedSeconds": 0.356,
|
|
"programRemainingSeconds": 61.10500000000001,
|
|
"motionIndex": 1,
|
|
"sampleIndex": 1,
|
|
"programSourceMode": "linuxcnc-machine-file-remap-wasm",
|
|
"executionSourceMode": "linuxcnc-task-motion-hal-wasm",
|
|
"motionCount": 29,
|
|
"message": "task/HAL status tick 22",
|
|
"task": {
|
|
"state": "ON",
|
|
"mode": "AUTO",
|
|
"interpState": "READING",
|
|
"execState": "WAITING_FOR_MOTION",
|
|
"taskPaused": false,
|
|
"singleStepping": false,
|
|
"cycle": 118,
|
|
"openProgram": "/work/sim/axis/vismach/5axis/table-rotary-tilting/xyzbc-trt/demos/xyzbc_switchkins.ngc",
|
|
"openedLineCount": 3,
|
|
"openedSourceLineCount": 44,
|
|
"executableLineCount": 2,
|
|
"nextProgramLine": 17
|
|
},
|
|
"ui": {
|
|
"taskState": "on",
|
|
"taskMode": "auto",
|
|
"interpState": "reading",
|
|
"execState": "waiting_for_motion",
|
|
"taskCycle": 0,
|
|
"servoCycle": 1180,
|
|
"motionQueueDepth": 0,
|
|
"halChangedPinCount": 0,
|
|
"activeLine": 17,
|
|
"motionProgramLine": 17,
|
|
"halProgramLine": 17,
|
|
"activeLineSource": "motion-status",
|
|
"activeLineHalSynced": true,
|
|
"switchkinsType": 0,
|
|
"axisPose": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 9.4933,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"axisPoseFrame": "work",
|
|
"currentVelocity": 1000.002
|
|
},
|
|
"feedback": {
|
|
"apiName": "web-rtcp-5axis-program-runtime-feedback",
|
|
"sourceMode": "linuxcnc-task-motion-hal-wasm",
|
|
"semanticBoundary": "linuxcnc_task_motion_hal_wasm_simulation_runtime",
|
|
"sampleIndex": 1,
|
|
"motionIndex": 1,
|
|
"line": 18,
|
|
"motionProgramLine": 17,
|
|
"halProgramLine": 17,
|
|
"activeLineSource": "motion-status",
|
|
"activeLineHalSynced": true,
|
|
"type": "TASK_MOTION",
|
|
"timeSeconds": 0,
|
|
"axisPose": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 9.4933,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"currentVelocityMmPerMin": 1000.002,
|
|
"requestedVelocityMmPerMin": 1000.002,
|
|
"distanceToGo": 0,
|
|
"dtg": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 0
|
|
},
|
|
"queueDepth": 0,
|
|
"activeDepth": 0,
|
|
"cycle": 1180,
|
|
"taskCycle": 118,
|
|
"halChangedPinCount": 0,
|
|
"sourceFile": "xyzbc_switchkins_sub.ngc",
|
|
"statement": "g0 x+20 y+20 z#<zmax>",
|
|
"motionType": "rapid",
|
|
"activeKinematics": "identity",
|
|
"tcp": {
|
|
"x": -2.3012327253671585,
|
|
"y": 2.301232725367158,
|
|
"z": 8.941485385342778
|
|
},
|
|
"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
|
|
}
|
|
}
|
|
},
|
|
"programUiExecution": {
|
|
"apiName": "web-rtcp-5axis-ui-gcode-live-execution",
|
|
"status": "running",
|
|
"source": "programAxisPreviewPath.samples",
|
|
"samplePeriodMs": 50,
|
|
"sampleIndex": 1,
|
|
"sampleCount": 1300,
|
|
"executedSampleCount": 2,
|
|
"timeMs": 50,
|
|
"activeProgram": "configs/sim/axis/vismach/5axis/table-rotary-tilting/demos/xyzbc_switchkins.ngc",
|
|
"sourceFile": "xyzbc_switchkins_sub.ngc",
|
|
"line": 18,
|
|
"statement": "g0 x+20 y+20 z#<zmax>",
|
|
"operation": "rapid-to-quadrant-center",
|
|
"executionIndex": 4,
|
|
"gcodeStepIndex": 18,
|
|
"segmentIndex": 1,
|
|
"motionType": "rapid",
|
|
"activeKinematics": "identity",
|
|
"joint": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 9.4933,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"tcp": {
|
|
"x": -2.3012327253671585,
|
|
"y": 2.301232725367158,
|
|
"z": 8.941485385342778
|
|
},
|
|
"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"
|
|
},
|
|
"axisPose": {
|
|
"x": -2.2959048852460238,
|
|
"y": 2.295904885246023,
|
|
"z": 8.920783956906865,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"tcpPose": {
|
|
"x": -2.2959048852460238,
|
|
"y": 2.295904885246023,
|
|
"z": 8.920783956906865,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"toolAxisVector": {
|
|
"x": 0.24184476264797528,
|
|
"y": 0.24184476264797522,
|
|
"z": 0.9396926207859084
|
|
},
|
|
"canvas": {
|
|
"toolhead": "{\"x\":-0.002,\"y\":0.002,\"z\":0.009}",
|
|
"tcpPose": "{\"x\":-2.296,\"y\":2.296,\"z\":8.921,\"a\":0,\"b\":20,\"c\":45}",
|
|
"toolAxis": "{\"x\":0.242,\"y\":0.242,\"z\":0.94}",
|
|
"executedPathPoints": "0",
|
|
"pathPoints": "1300"
|
|
},
|
|
"frame": "frame-0008.png",
|
|
"captureStartedMs": 1783110129980,
|
|
"captureDurationMs": 128,
|
|
"intervalSincePreviousMs": 123
|
|
},
|
|
{
|
|
"wallClock": "2026-07-03T20:22:10.118Z",
|
|
"perfNow": 2710.2000000029802,
|
|
"runState": "running",
|
|
"mode": "auto",
|
|
"interpState": "reading",
|
|
"activeLine": 18,
|
|
"programElapsedSeconds": 0.356,
|
|
"programRemainingSeconds": 61.10500000000001,
|
|
"motionIndex": 1,
|
|
"sampleIndex": 1,
|
|
"programSourceMode": "linuxcnc-machine-file-remap-wasm",
|
|
"executionSourceMode": "linuxcnc-task-motion-hal-wasm",
|
|
"motionCount": 29,
|
|
"message": "task/HAL status tick 26",
|
|
"task": {
|
|
"state": "ON",
|
|
"mode": "AUTO",
|
|
"interpState": "READING",
|
|
"execState": "WAITING_FOR_MOTION",
|
|
"taskPaused": false,
|
|
"singleStepping": false,
|
|
"cycle": 138,
|
|
"openProgram": "/work/sim/axis/vismach/5axis/table-rotary-tilting/xyzbc-trt/demos/xyzbc_switchkins.ngc",
|
|
"openedLineCount": 3,
|
|
"openedSourceLineCount": 44,
|
|
"executableLineCount": 2,
|
|
"nextProgramLine": 17
|
|
},
|
|
"ui": {
|
|
"taskState": "on",
|
|
"taskMode": "auto",
|
|
"interpState": "reading",
|
|
"execState": "waiting_for_motion",
|
|
"taskCycle": 0,
|
|
"servoCycle": 1380,
|
|
"motionQueueDepth": 0,
|
|
"halChangedPinCount": 0,
|
|
"activeLine": 17,
|
|
"motionProgramLine": 17,
|
|
"halProgramLine": 17,
|
|
"activeLineSource": "motion-status",
|
|
"activeLineHalSynced": true,
|
|
"switchkinsType": 0,
|
|
"axisPose": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 9.40518,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"axisPoseFrame": "work",
|
|
"currentVelocity": 1000.002
|
|
},
|
|
"feedback": {
|
|
"apiName": "web-rtcp-5axis-program-runtime-feedback",
|
|
"sourceMode": "linuxcnc-task-motion-hal-wasm",
|
|
"semanticBoundary": "linuxcnc_task_motion_hal_wasm_simulation_runtime",
|
|
"sampleIndex": 1,
|
|
"motionIndex": 1,
|
|
"line": 18,
|
|
"motionProgramLine": 17,
|
|
"halProgramLine": 17,
|
|
"activeLineSource": "motion-status",
|
|
"activeLineHalSynced": true,
|
|
"type": "TASK_MOTION",
|
|
"timeSeconds": 0,
|
|
"axisPose": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 9.40518,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"currentVelocityMmPerMin": 1000.002,
|
|
"requestedVelocityMmPerMin": 1000.002,
|
|
"distanceToGo": 0,
|
|
"dtg": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 0
|
|
},
|
|
"queueDepth": 0,
|
|
"activeDepth": 0,
|
|
"cycle": 1380,
|
|
"taskCycle": 138,
|
|
"halChangedPinCount": 0,
|
|
"sourceFile": "xyzbc_switchkins_sub.ngc",
|
|
"statement": "g0 x+20 y+20 z#<zmax>",
|
|
"motionType": "rapid",
|
|
"activeKinematics": "identity",
|
|
"tcp": {
|
|
"x": -2.279921364882619,
|
|
"y": 2.2799213648826187,
|
|
"z": 8.858679671599125
|
|
},
|
|
"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
|
|
}
|
|
}
|
|
},
|
|
"programUiExecution": {
|
|
"apiName": "web-rtcp-5axis-ui-gcode-live-execution",
|
|
"status": "running",
|
|
"source": "programAxisPreviewPath.samples",
|
|
"samplePeriodMs": 50,
|
|
"sampleIndex": 1,
|
|
"sampleCount": 1300,
|
|
"executedSampleCount": 2,
|
|
"timeMs": 50,
|
|
"activeProgram": "configs/sim/axis/vismach/5axis/table-rotary-tilting/demos/xyzbc_switchkins.ngc",
|
|
"sourceFile": "xyzbc_switchkins_sub.ngc",
|
|
"line": 18,
|
|
"statement": "g0 x+20 y+20 z#<zmax>",
|
|
"operation": "rapid-to-quadrant-center",
|
|
"executionIndex": 4,
|
|
"gcodeStepIndex": 18,
|
|
"segmentIndex": 1,
|
|
"motionType": "rapid",
|
|
"activeKinematics": "identity",
|
|
"joint": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 9.40518,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"tcp": {
|
|
"x": -2.279921364882619,
|
|
"y": 2.2799213648826187,
|
|
"z": 8.858679671599125
|
|
},
|
|
"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"
|
|
},
|
|
"axisPose": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 9.40518,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"tcpPose": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 9.40518,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"toolAxisVector": {
|
|
"x": 0.24184476264797528,
|
|
"y": 0.24184476264797522,
|
|
"z": 0.9396926207859084
|
|
},
|
|
"canvas": {
|
|
"toolhead": "{\"x\":-0.002,\"y\":0.002,\"z\":0.009}",
|
|
"tcpPose": "{\"x\":0,\"y\":0,\"z\":9.405,\"a\":0,\"b\":20,\"c\":45}",
|
|
"toolAxis": "{\"x\":0.242,\"y\":0.242,\"z\":0.94}",
|
|
"executedPathPoints": "0",
|
|
"pathPoints": "1300"
|
|
},
|
|
"frame": "frame-0009.png",
|
|
"captureStartedMs": 1783110130108,
|
|
"captureDurationMs": 128,
|
|
"intervalSincePreviousMs": 128
|
|
},
|
|
{
|
|
"wallClock": "2026-07-03T20:22:10.246Z",
|
|
"perfNow": 2838.10000000149,
|
|
"runState": "running",
|
|
"mode": "auto",
|
|
"interpState": "reading",
|
|
"activeLine": 18,
|
|
"programElapsedSeconds": 0.356,
|
|
"programRemainingSeconds": 61.10500000000001,
|
|
"motionIndex": 1,
|
|
"sampleIndex": 1,
|
|
"programSourceMode": "linuxcnc-machine-file-remap-wasm",
|
|
"executionSourceMode": "linuxcnc-task-motion-hal-wasm",
|
|
"motionCount": 29,
|
|
"message": "task/HAL status tick 29",
|
|
"task": {
|
|
"state": "ON",
|
|
"mode": "AUTO",
|
|
"interpState": "READING",
|
|
"execState": "WAITING_FOR_MOTION",
|
|
"taskPaused": false,
|
|
"singleStepping": false,
|
|
"cycle": 153,
|
|
"openProgram": "/work/sim/axis/vismach/5axis/table-rotary-tilting/xyzbc-trt/demos/xyzbc_switchkins.ngc",
|
|
"openedLineCount": 3,
|
|
"openedSourceLineCount": 44,
|
|
"executableLineCount": 2,
|
|
"nextProgramLine": 17
|
|
},
|
|
"ui": {
|
|
"taskState": "on",
|
|
"taskMode": "auto",
|
|
"interpState": "reading",
|
|
"execState": "waiting_for_motion",
|
|
"taskCycle": 0,
|
|
"servoCycle": 1530,
|
|
"motionQueueDepth": 0,
|
|
"halChangedPinCount": 0,
|
|
"activeLine": 17,
|
|
"motionProgramLine": 17,
|
|
"halProgramLine": 17,
|
|
"activeLineSource": "motion-status",
|
|
"activeLineHalSynced": true,
|
|
"switchkinsType": 0,
|
|
"axisPose": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 9.33909,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"axisPoseFrame": "work",
|
|
"currentVelocity": 1000.002
|
|
},
|
|
"feedback": {
|
|
"apiName": "web-rtcp-5axis-program-runtime-feedback",
|
|
"sourceMode": "linuxcnc-task-motion-hal-wasm",
|
|
"semanticBoundary": "linuxcnc_task_motion_hal_wasm_simulation_runtime",
|
|
"sampleIndex": 1,
|
|
"motionIndex": 1,
|
|
"line": 18,
|
|
"motionProgramLine": 17,
|
|
"halProgramLine": 17,
|
|
"activeLineSource": "motion-status",
|
|
"activeLineHalSynced": true,
|
|
"type": "TASK_MOTION",
|
|
"timeSeconds": 0,
|
|
"axisPose": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 9.33909,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"currentVelocityMmPerMin": 1000.002,
|
|
"requestedVelocityMmPerMin": 1000.002,
|
|
"distanceToGo": 0,
|
|
"dtg": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 0
|
|
},
|
|
"queueDepth": 0,
|
|
"activeDepth": 0,
|
|
"cycle": 1530,
|
|
"taskCycle": 153,
|
|
"halChangedPinCount": 0,
|
|
"sourceFile": "xyzbc_switchkins_sub.ngc",
|
|
"statement": "g0 x+20 y+20 z#<zmax>",
|
|
"motionType": "rapid",
|
|
"activeKinematics": "identity",
|
|
"tcp": {
|
|
"x": -2.2639378445192144,
|
|
"y": 2.2639378445192135,
|
|
"z": 8.796575386291384
|
|
},
|
|
"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
|
|
}
|
|
}
|
|
},
|
|
"programUiExecution": {
|
|
"apiName": "web-rtcp-5axis-ui-gcode-live-execution",
|
|
"status": "running",
|
|
"source": "programAxisPreviewPath.samples",
|
|
"samplePeriodMs": 50,
|
|
"sampleIndex": 1,
|
|
"sampleCount": 1300,
|
|
"executedSampleCount": 2,
|
|
"timeMs": 50,
|
|
"activeProgram": "configs/sim/axis/vismach/5axis/table-rotary-tilting/demos/xyzbc_switchkins.ngc",
|
|
"sourceFile": "xyzbc_switchkins_sub.ngc",
|
|
"line": 18,
|
|
"statement": "g0 x+20 y+20 z#<zmax>",
|
|
"operation": "rapid-to-quadrant-center",
|
|
"executionIndex": 4,
|
|
"gcodeStepIndex": 18,
|
|
"segmentIndex": 1,
|
|
"motionType": "rapid",
|
|
"activeKinematics": "identity",
|
|
"joint": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 9.33909,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"tcp": {
|
|
"x": -2.2639378445192144,
|
|
"y": 2.2639378445192135,
|
|
"z": 8.796575386291384
|
|
},
|
|
"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"
|
|
},
|
|
"axisPose": {
|
|
"x": -2.2586100043980797,
|
|
"y": 2.2586100043980792,
|
|
"z": 8.77587395785547,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"tcpPose": {
|
|
"x": -2.2586100043980797,
|
|
"y": 2.2586100043980792,
|
|
"z": 8.77587395785547,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"toolAxisVector": {
|
|
"x": 0.24184476264797528,
|
|
"y": 0.24184476264797522,
|
|
"z": 0.9396926207859084
|
|
},
|
|
"canvas": {
|
|
"toolhead": "{\"x\":-0.002,\"y\":0.002,\"z\":0.009}",
|
|
"tcpPose": "{\"x\":-2.259,\"y\":2.259,\"z\":8.776,\"a\":0,\"b\":20,\"c\":45}",
|
|
"toolAxis": "{\"x\":0.242,\"y\":0.242,\"z\":0.94}",
|
|
"executedPathPoints": "0",
|
|
"pathPoints": "1300"
|
|
},
|
|
"frame": "frame-0010.png",
|
|
"captureStartedMs": 1783110130236,
|
|
"captureDurationMs": 134,
|
|
"intervalSincePreviousMs": 128
|
|
},
|
|
{
|
|
"wallClock": "2026-07-03T20:22:10.377Z",
|
|
"perfNow": 2969.2000000029802,
|
|
"runState": "running",
|
|
"mode": "auto",
|
|
"interpState": "reading",
|
|
"activeLine": 18,
|
|
"programElapsedSeconds": 0.356,
|
|
"programRemainingSeconds": 61.10500000000001,
|
|
"motionIndex": 1,
|
|
"sampleIndex": 1,
|
|
"programSourceMode": "linuxcnc-machine-file-remap-wasm",
|
|
"executionSourceMode": "linuxcnc-task-motion-hal-wasm",
|
|
"motionCount": 29,
|
|
"message": "task/HAL status tick 32",
|
|
"task": {
|
|
"state": "ON",
|
|
"mode": "AUTO",
|
|
"interpState": "READING",
|
|
"execState": "WAITING_FOR_MOTION",
|
|
"taskPaused": false,
|
|
"singleStepping": false,
|
|
"cycle": 168,
|
|
"openProgram": "/work/sim/axis/vismach/5axis/table-rotary-tilting/xyzbc-trt/demos/xyzbc_switchkins.ngc",
|
|
"openedLineCount": 3,
|
|
"openedSourceLineCount": 44,
|
|
"executableLineCount": 2,
|
|
"nextProgramLine": 17
|
|
},
|
|
"ui": {
|
|
"taskState": "on",
|
|
"taskMode": "auto",
|
|
"interpState": "reading",
|
|
"execState": "waiting_for_motion",
|
|
"taskCycle": 0,
|
|
"servoCycle": 1680,
|
|
"motionQueueDepth": 0,
|
|
"halChangedPinCount": 0,
|
|
"activeLine": 17,
|
|
"motionProgramLine": 17,
|
|
"halProgramLine": 17,
|
|
"activeLineSource": "motion-status",
|
|
"activeLineHalSynced": true,
|
|
"switchkinsType": 0,
|
|
"axisPose": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 9.273,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"axisPoseFrame": "work",
|
|
"currentVelocity": 1000.002
|
|
},
|
|
"feedback": {
|
|
"apiName": "web-rtcp-5axis-program-runtime-feedback",
|
|
"sourceMode": "linuxcnc-task-motion-hal-wasm",
|
|
"semanticBoundary": "linuxcnc_task_motion_hal_wasm_simulation_runtime",
|
|
"sampleIndex": 1,
|
|
"motionIndex": 1,
|
|
"line": 18,
|
|
"motionProgramLine": 17,
|
|
"halProgramLine": 17,
|
|
"activeLineSource": "motion-status",
|
|
"activeLineHalSynced": true,
|
|
"type": "TASK_MOTION",
|
|
"timeSeconds": 0,
|
|
"axisPose": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 9.273,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"currentVelocityMmPerMin": 1000.002,
|
|
"requestedVelocityMmPerMin": 1000.002,
|
|
"distanceToGo": 0,
|
|
"dtg": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 0
|
|
},
|
|
"queueDepth": 0,
|
|
"activeDepth": 0,
|
|
"cycle": 1680,
|
|
"taskCycle": 168,
|
|
"halChangedPinCount": 0,
|
|
"sourceFile": "xyzbc_switchkins_sub.ngc",
|
|
"statement": "g0 x+20 y+20 z#<zmax>",
|
|
"motionType": "rapid",
|
|
"activeKinematics": "identity",
|
|
"tcp": {
|
|
"x": -2.2479543241558098,
|
|
"y": 2.2479543241558093,
|
|
"z": 8.734471100983644
|
|
},
|
|
"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
|
|
}
|
|
}
|
|
},
|
|
"programUiExecution": {
|
|
"apiName": "web-rtcp-5axis-ui-gcode-live-execution",
|
|
"status": "running",
|
|
"source": "programAxisPreviewPath.samples",
|
|
"samplePeriodMs": 50,
|
|
"sampleIndex": 1,
|
|
"sampleCount": 1300,
|
|
"executedSampleCount": 2,
|
|
"timeMs": 50,
|
|
"activeProgram": "configs/sim/axis/vismach/5axis/table-rotary-tilting/demos/xyzbc_switchkins.ngc",
|
|
"sourceFile": "xyzbc_switchkins_sub.ngc",
|
|
"line": 18,
|
|
"statement": "g0 x+20 y+20 z#<zmax>",
|
|
"operation": "rapid-to-quadrant-center",
|
|
"executionIndex": 4,
|
|
"gcodeStepIndex": 18,
|
|
"segmentIndex": 1,
|
|
"motionType": "rapid",
|
|
"activeKinematics": "identity",
|
|
"joint": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 9.273,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"tcp": {
|
|
"x": -2.2479543241558098,
|
|
"y": 2.2479543241558093,
|
|
"z": 8.734471100983644
|
|
},
|
|
"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"
|
|
},
|
|
"axisPose": {
|
|
"x": -2.2426264840346746,
|
|
"y": 2.242626484034674,
|
|
"z": 8.713769672547729,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"tcpPose": {
|
|
"x": -2.2426264840346746,
|
|
"y": 2.242626484034674,
|
|
"z": 8.713769672547729,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"toolAxisVector": {
|
|
"x": 0.24184476264797528,
|
|
"y": 0.24184476264797522,
|
|
"z": 0.9396926207859084
|
|
},
|
|
"canvas": {
|
|
"toolhead": "{\"x\":-0.002,\"y\":0.002,\"z\":0.009}",
|
|
"tcpPose": "{\"x\":-2.243,\"y\":2.243,\"z\":8.714,\"a\":0,\"b\":20,\"c\":45}",
|
|
"toolAxis": "{\"x\":0.242,\"y\":0.242,\"z\":0.94}",
|
|
"executedPathPoints": "0",
|
|
"pathPoints": "1300"
|
|
},
|
|
"frame": "frame-0011.png",
|
|
"captureStartedMs": 1783110130370,
|
|
"captureDurationMs": 143,
|
|
"intervalSincePreviousMs": 134
|
|
},
|
|
{
|
|
"wallClock": "2026-07-03T20:22:10.524Z",
|
|
"perfNow": 3115.800000000745,
|
|
"runState": "running",
|
|
"mode": "auto",
|
|
"interpState": "reading",
|
|
"activeLine": 18,
|
|
"programElapsedSeconds": 0.356,
|
|
"programRemainingSeconds": 61.10500000000001,
|
|
"motionIndex": 1,
|
|
"sampleIndex": 1,
|
|
"programSourceMode": "linuxcnc-machine-file-remap-wasm",
|
|
"executionSourceMode": "linuxcnc-task-motion-hal-wasm",
|
|
"motionCount": 29,
|
|
"message": "task/HAL status tick 36",
|
|
"task": {
|
|
"state": "ON",
|
|
"mode": "AUTO",
|
|
"interpState": "READING",
|
|
"execState": "WAITING_FOR_MOTION",
|
|
"taskPaused": false,
|
|
"singleStepping": false,
|
|
"cycle": 188,
|
|
"openProgram": "/work/sim/axis/vismach/5axis/table-rotary-tilting/xyzbc-trt/demos/xyzbc_switchkins.ngc",
|
|
"openedLineCount": 3,
|
|
"openedSourceLineCount": 44,
|
|
"executableLineCount": 2,
|
|
"nextProgramLine": 17
|
|
},
|
|
"ui": {
|
|
"taskState": "on",
|
|
"taskMode": "auto",
|
|
"interpState": "reading",
|
|
"execState": "waiting_for_motion",
|
|
"taskCycle": 0,
|
|
"servoCycle": 1880,
|
|
"motionQueueDepth": 0,
|
|
"halChangedPinCount": 0,
|
|
"activeLine": 17,
|
|
"motionProgramLine": 17,
|
|
"halProgramLine": 17,
|
|
"activeLineSource": "motion-status",
|
|
"activeLineHalSynced": true,
|
|
"switchkinsType": 0,
|
|
"axisPose": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 9.18488,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"axisPoseFrame": "work",
|
|
"currentVelocity": 1000.002
|
|
},
|
|
"feedback": {
|
|
"apiName": "web-rtcp-5axis-program-runtime-feedback",
|
|
"sourceMode": "linuxcnc-task-motion-hal-wasm",
|
|
"semanticBoundary": "linuxcnc_task_motion_hal_wasm_simulation_runtime",
|
|
"sampleIndex": 1,
|
|
"motionIndex": 1,
|
|
"line": 18,
|
|
"motionProgramLine": 17,
|
|
"halProgramLine": 17,
|
|
"activeLineSource": "motion-status",
|
|
"activeLineHalSynced": true,
|
|
"type": "TASK_MOTION",
|
|
"timeSeconds": 0,
|
|
"axisPose": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 9.18488,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"currentVelocityMmPerMin": 1000.002,
|
|
"requestedVelocityMmPerMin": 1000.002,
|
|
"distanceToGo": 0,
|
|
"dtg": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 0
|
|
},
|
|
"queueDepth": 0,
|
|
"activeDepth": 0,
|
|
"cycle": 1880,
|
|
"taskCycle": 188,
|
|
"halChangedPinCount": 0,
|
|
"sourceFile": "xyzbc_switchkins_sub.ngc",
|
|
"statement": "g0 x+20 y+20 z#<zmax>",
|
|
"motionType": "rapid",
|
|
"activeKinematics": "identity",
|
|
"tcp": {
|
|
"x": -2.2266429636712703,
|
|
"y": 2.2266429636712695,
|
|
"z": 8.651665387239989
|
|
},
|
|
"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
|
|
}
|
|
}
|
|
},
|
|
"programUiExecution": {
|
|
"apiName": "web-rtcp-5axis-ui-gcode-live-execution",
|
|
"status": "running",
|
|
"source": "programAxisPreviewPath.samples",
|
|
"samplePeriodMs": 50,
|
|
"sampleIndex": 1,
|
|
"sampleCount": 1300,
|
|
"executedSampleCount": 2,
|
|
"timeMs": 50,
|
|
"activeProgram": "configs/sim/axis/vismach/5axis/table-rotary-tilting/demos/xyzbc_switchkins.ngc",
|
|
"sourceFile": "xyzbc_switchkins_sub.ngc",
|
|
"line": 18,
|
|
"statement": "g0 x+20 y+20 z#<zmax>",
|
|
"operation": "rapid-to-quadrant-center",
|
|
"executionIndex": 4,
|
|
"gcodeStepIndex": 18,
|
|
"segmentIndex": 1,
|
|
"motionType": "rapid",
|
|
"activeKinematics": "identity",
|
|
"joint": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 9.18488,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"tcp": {
|
|
"x": -2.2266429636712703,
|
|
"y": 2.2266429636712695,
|
|
"z": 8.651665387239989
|
|
},
|
|
"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"
|
|
},
|
|
"axisPose": {
|
|
"x": -2.221315123550135,
|
|
"y": 2.2213151235501347,
|
|
"z": 8.630963958804074,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"tcpPose": {
|
|
"x": -2.221315123550135,
|
|
"y": 2.2213151235501347,
|
|
"z": 8.630963958804074,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"toolAxisVector": {
|
|
"x": 0.24184476264797528,
|
|
"y": 0.24184476264797522,
|
|
"z": 0.9396926207859084
|
|
},
|
|
"canvas": {
|
|
"toolhead": "{\"x\":-0.002,\"y\":0.002,\"z\":0.009}",
|
|
"tcpPose": "{\"x\":-2.221,\"y\":2.221,\"z\":8.631,\"a\":0,\"b\":20,\"c\":45}",
|
|
"toolAxis": "{\"x\":0.242,\"y\":0.242,\"z\":0.94}",
|
|
"executedPathPoints": "0",
|
|
"pathPoints": "1300"
|
|
},
|
|
"frame": "frame-0012.png",
|
|
"captureStartedMs": 1783110130513,
|
|
"captureDurationMs": 132,
|
|
"intervalSincePreviousMs": 143
|
|
},
|
|
{
|
|
"wallClock": "2026-07-03T20:22:10.649Z",
|
|
"perfNow": 3241,
|
|
"runState": "running",
|
|
"mode": "auto",
|
|
"interpState": "reading",
|
|
"activeLine": 18,
|
|
"programElapsedSeconds": 0.356,
|
|
"programRemainingSeconds": 61.10500000000001,
|
|
"motionIndex": 1,
|
|
"sampleIndex": 1,
|
|
"programSourceMode": "linuxcnc-machine-file-remap-wasm",
|
|
"executionSourceMode": "linuxcnc-task-motion-hal-wasm",
|
|
"motionCount": 29,
|
|
"message": "task/HAL status tick 39",
|
|
"task": {
|
|
"state": "ON",
|
|
"mode": "AUTO",
|
|
"interpState": "READING",
|
|
"execState": "WAITING_FOR_MOTION",
|
|
"taskPaused": false,
|
|
"singleStepping": false,
|
|
"cycle": 203,
|
|
"openProgram": "/work/sim/axis/vismach/5axis/table-rotary-tilting/xyzbc-trt/demos/xyzbc_switchkins.ngc",
|
|
"openedLineCount": 3,
|
|
"openedSourceLineCount": 44,
|
|
"executableLineCount": 2,
|
|
"nextProgramLine": 17
|
|
},
|
|
"ui": {
|
|
"taskState": "on",
|
|
"taskMode": "auto",
|
|
"interpState": "reading",
|
|
"execState": "waiting_for_motion",
|
|
"taskCycle": 0,
|
|
"servoCycle": 2030,
|
|
"motionQueueDepth": 0,
|
|
"halChangedPinCount": 0,
|
|
"activeLine": 17,
|
|
"motionProgramLine": 17,
|
|
"halProgramLine": 17,
|
|
"activeLineSource": "motion-status",
|
|
"activeLineHalSynced": true,
|
|
"switchkinsType": 0,
|
|
"axisPose": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 9.11879,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"axisPoseFrame": "work",
|
|
"currentVelocity": 1000.002
|
|
},
|
|
"feedback": {
|
|
"apiName": "web-rtcp-5axis-program-runtime-feedback",
|
|
"sourceMode": "linuxcnc-task-motion-hal-wasm",
|
|
"semanticBoundary": "linuxcnc_task_motion_hal_wasm_simulation_runtime",
|
|
"sampleIndex": 1,
|
|
"motionIndex": 1,
|
|
"line": 18,
|
|
"motionProgramLine": 17,
|
|
"halProgramLine": 17,
|
|
"activeLineSource": "motion-status",
|
|
"activeLineHalSynced": true,
|
|
"type": "TASK_MOTION",
|
|
"timeSeconds": 0,
|
|
"axisPose": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 9.11879,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"currentVelocityMmPerMin": 1000.002,
|
|
"requestedVelocityMmPerMin": 1000.002,
|
|
"distanceToGo": 0,
|
|
"dtg": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 0
|
|
},
|
|
"queueDepth": 0,
|
|
"activeDepth": 0,
|
|
"cycle": 2030,
|
|
"taskCycle": 203,
|
|
"halChangedPinCount": 0,
|
|
"sourceFile": "xyzbc_switchkins_sub.ngc",
|
|
"statement": "g0 x+20 y+20 z#<zmax>",
|
|
"motionType": "rapid",
|
|
"activeKinematics": "identity",
|
|
"tcp": {
|
|
"x": -2.2106594433078652,
|
|
"y": 2.210659443307865,
|
|
"z": 8.589561101932247
|
|
},
|
|
"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
|
|
}
|
|
}
|
|
},
|
|
"programUiExecution": {
|
|
"apiName": "web-rtcp-5axis-ui-gcode-live-execution",
|
|
"status": "running",
|
|
"source": "programAxisPreviewPath.samples",
|
|
"samplePeriodMs": 50,
|
|
"sampleIndex": 1,
|
|
"sampleCount": 1300,
|
|
"executedSampleCount": 2,
|
|
"timeMs": 50,
|
|
"activeProgram": "configs/sim/axis/vismach/5axis/table-rotary-tilting/demos/xyzbc_switchkins.ngc",
|
|
"sourceFile": "xyzbc_switchkins_sub.ngc",
|
|
"line": 18,
|
|
"statement": "g0 x+20 y+20 z#<zmax>",
|
|
"operation": "rapid-to-quadrant-center",
|
|
"executionIndex": 4,
|
|
"gcodeStepIndex": 18,
|
|
"segmentIndex": 1,
|
|
"motionType": "rapid",
|
|
"activeKinematics": "identity",
|
|
"joint": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 9.11879,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"tcp": {
|
|
"x": -2.2106594433078652,
|
|
"y": 2.210659443307865,
|
|
"z": 8.589561101932247
|
|
},
|
|
"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"
|
|
},
|
|
"axisPose": {
|
|
"x": -2.2053316031867305,
|
|
"y": 2.20533160318673,
|
|
"z": 8.568859673496334,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"tcpPose": {
|
|
"x": -2.2053316031867305,
|
|
"y": 2.20533160318673,
|
|
"z": 8.568859673496334,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"toolAxisVector": {
|
|
"x": 0.24184476264797528,
|
|
"y": 0.24184476264797522,
|
|
"z": 0.9396926207859084
|
|
},
|
|
"canvas": {
|
|
"toolhead": "{\"x\":-0.002,\"y\":0.002,\"z\":0.009}",
|
|
"tcpPose": "{\"x\":-2.205,\"y\":2.205,\"z\":8.569,\"a\":0,\"b\":20,\"c\":45}",
|
|
"toolAxis": "{\"x\":0.242,\"y\":0.242,\"z\":0.94}",
|
|
"executedPathPoints": "0",
|
|
"pathPoints": "1300"
|
|
},
|
|
"frame": "frame-0013.png",
|
|
"captureStartedMs": 1783110130645,
|
|
"captureDurationMs": 158,
|
|
"intervalSincePreviousMs": 132
|
|
},
|
|
{
|
|
"wallClock": "2026-07-03T20:22:10.807Z",
|
|
"perfNow": 3398.900000002235,
|
|
"runState": "running",
|
|
"mode": "auto",
|
|
"interpState": "reading",
|
|
"activeLine": 18,
|
|
"programElapsedSeconds": 0.356,
|
|
"programRemainingSeconds": 61.10500000000001,
|
|
"motionIndex": 1,
|
|
"sampleIndex": 1,
|
|
"programSourceMode": "linuxcnc-machine-file-remap-wasm",
|
|
"executionSourceMode": "linuxcnc-task-motion-hal-wasm",
|
|
"motionCount": 29,
|
|
"message": "task/HAL status tick 43",
|
|
"task": {
|
|
"state": "ON",
|
|
"mode": "AUTO",
|
|
"interpState": "READING",
|
|
"execState": "WAITING_FOR_MOTION",
|
|
"taskPaused": false,
|
|
"singleStepping": false,
|
|
"cycle": 223,
|
|
"openProgram": "/work/sim/axis/vismach/5axis/table-rotary-tilting/xyzbc-trt/demos/xyzbc_switchkins.ngc",
|
|
"openedLineCount": 3,
|
|
"openedSourceLineCount": 44,
|
|
"executableLineCount": 2,
|
|
"nextProgramLine": 17
|
|
},
|
|
"ui": {
|
|
"taskState": "on",
|
|
"taskMode": "auto",
|
|
"interpState": "reading",
|
|
"execState": "waiting_for_motion",
|
|
"taskCycle": 0,
|
|
"servoCycle": 2230,
|
|
"motionQueueDepth": 0,
|
|
"halChangedPinCount": 0,
|
|
"activeLine": 17,
|
|
"motionProgramLine": 17,
|
|
"halProgramLine": 17,
|
|
"activeLineSource": "motion-status",
|
|
"activeLineHalSynced": true,
|
|
"switchkinsType": 0,
|
|
"axisPose": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 9.03067,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"axisPoseFrame": "work",
|
|
"currentVelocity": 1000.002
|
|
},
|
|
"feedback": {
|
|
"apiName": "web-rtcp-5axis-program-runtime-feedback",
|
|
"sourceMode": "linuxcnc-task-motion-hal-wasm",
|
|
"semanticBoundary": "linuxcnc_task_motion_hal_wasm_simulation_runtime",
|
|
"sampleIndex": 1,
|
|
"motionIndex": 1,
|
|
"line": 18,
|
|
"motionProgramLine": 17,
|
|
"halProgramLine": 17,
|
|
"activeLineSource": "motion-status",
|
|
"activeLineHalSynced": true,
|
|
"type": "TASK_MOTION",
|
|
"timeSeconds": 0,
|
|
"axisPose": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 9.03067,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"currentVelocityMmPerMin": 1000.002,
|
|
"requestedVelocityMmPerMin": 1000.002,
|
|
"distanceToGo": 0,
|
|
"dtg": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 0
|
|
},
|
|
"queueDepth": 0,
|
|
"activeDepth": 0,
|
|
"cycle": 2230,
|
|
"taskCycle": 223,
|
|
"halChangedPinCount": 0,
|
|
"sourceFile": "xyzbc_switchkins_sub.ngc",
|
|
"statement": "g0 x+20 y+20 z#<zmax>",
|
|
"motionType": "rapid",
|
|
"activeKinematics": "identity",
|
|
"tcp": {
|
|
"x": -2.189348082823326,
|
|
"y": 2.1893480828233254,
|
|
"z": 8.506755388188592
|
|
},
|
|
"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
|
|
}
|
|
}
|
|
},
|
|
"programUiExecution": {
|
|
"apiName": "web-rtcp-5axis-ui-gcode-live-execution",
|
|
"status": "running",
|
|
"source": "programAxisPreviewPath.samples",
|
|
"samplePeriodMs": 50,
|
|
"sampleIndex": 1,
|
|
"sampleCount": 1300,
|
|
"executedSampleCount": 2,
|
|
"timeMs": 50,
|
|
"activeProgram": "configs/sim/axis/vismach/5axis/table-rotary-tilting/demos/xyzbc_switchkins.ngc",
|
|
"sourceFile": "xyzbc_switchkins_sub.ngc",
|
|
"line": 18,
|
|
"statement": "g0 x+20 y+20 z#<zmax>",
|
|
"operation": "rapid-to-quadrant-center",
|
|
"executionIndex": 4,
|
|
"gcodeStepIndex": 18,
|
|
"segmentIndex": 1,
|
|
"motionType": "rapid",
|
|
"activeKinematics": "identity",
|
|
"joint": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 9.03067,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"tcp": {
|
|
"x": -2.189348082823326,
|
|
"y": 2.1893480828233254,
|
|
"z": 8.506755388188592
|
|
},
|
|
"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"
|
|
},
|
|
"axisPose": {
|
|
"x": -2.184020242702191,
|
|
"y": 2.1840202427021906,
|
|
"z": 8.486053959752681,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"tcpPose": {
|
|
"x": -2.184020242702191,
|
|
"y": 2.1840202427021906,
|
|
"z": 8.486053959752681,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"toolAxisVector": {
|
|
"x": 0.24184476264797528,
|
|
"y": 0.24184476264797522,
|
|
"z": 0.9396926207859084
|
|
},
|
|
"canvas": {
|
|
"toolhead": "{\"x\":-0.002,\"y\":0.002,\"z\":0.009}",
|
|
"tcpPose": "{\"x\":-2.184,\"y\":2.184,\"z\":8.486,\"a\":0,\"b\":20,\"c\":45}",
|
|
"toolAxis": "{\"x\":0.242,\"y\":0.242,\"z\":0.94}",
|
|
"executedPathPoints": "0",
|
|
"pathPoints": "1300"
|
|
},
|
|
"frame": "frame-0014.png",
|
|
"captureStartedMs": 1783110130803,
|
|
"captureDurationMs": 125,
|
|
"intervalSincePreviousMs": 158
|
|
},
|
|
{
|
|
"wallClock": "2026-07-03T20:22:10.939Z",
|
|
"perfNow": 3531.10000000149,
|
|
"runState": "running",
|
|
"mode": "auto",
|
|
"interpState": "reading",
|
|
"activeLine": 18,
|
|
"programElapsedSeconds": 0.356,
|
|
"programRemainingSeconds": 61.10500000000001,
|
|
"motionIndex": 1,
|
|
"sampleIndex": 1,
|
|
"programSourceMode": "linuxcnc-machine-file-remap-wasm",
|
|
"executionSourceMode": "linuxcnc-task-motion-hal-wasm",
|
|
"motionCount": 29,
|
|
"message": "task/HAL status tick 47",
|
|
"task": {
|
|
"state": "ON",
|
|
"mode": "AUTO",
|
|
"interpState": "READING",
|
|
"execState": "WAITING_FOR_MOTION",
|
|
"taskPaused": false,
|
|
"singleStepping": false,
|
|
"cycle": 243,
|
|
"openProgram": "/work/sim/axis/vismach/5axis/table-rotary-tilting/xyzbc-trt/demos/xyzbc_switchkins.ngc",
|
|
"openedLineCount": 3,
|
|
"openedSourceLineCount": 44,
|
|
"executableLineCount": 2,
|
|
"nextProgramLine": 17
|
|
},
|
|
"ui": {
|
|
"taskState": "on",
|
|
"taskMode": "auto",
|
|
"interpState": "reading",
|
|
"execState": "waiting_for_motion",
|
|
"taskCycle": 0,
|
|
"servoCycle": 2430,
|
|
"motionQueueDepth": 0,
|
|
"halChangedPinCount": 0,
|
|
"activeLine": 17,
|
|
"motionProgramLine": 17,
|
|
"halProgramLine": 17,
|
|
"activeLineSource": "motion-status",
|
|
"activeLineHalSynced": true,
|
|
"switchkinsType": 0,
|
|
"axisPose": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 8.94254,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"axisPoseFrame": "work",
|
|
"currentVelocity": 1000.002
|
|
},
|
|
"feedback": {
|
|
"apiName": "web-rtcp-5axis-program-runtime-feedback",
|
|
"sourceMode": "linuxcnc-task-motion-hal-wasm",
|
|
"semanticBoundary": "linuxcnc_task_motion_hal_wasm_simulation_runtime",
|
|
"sampleIndex": 1,
|
|
"motionIndex": 1,
|
|
"line": 18,
|
|
"motionProgramLine": 17,
|
|
"halProgramLine": 17,
|
|
"activeLineSource": "motion-status",
|
|
"activeLineHalSynced": true,
|
|
"type": "TASK_MOTION",
|
|
"timeSeconds": 0,
|
|
"axisPose": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 8.94254,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"currentVelocityMmPerMin": 1000.002,
|
|
"requestedVelocityMmPerMin": 1000.002,
|
|
"distanceToGo": 0,
|
|
"dtg": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 0
|
|
},
|
|
"queueDepth": 0,
|
|
"activeDepth": 0,
|
|
"cycle": 2430,
|
|
"taskCycle": 243,
|
|
"halChangedPinCount": 0,
|
|
"sourceFile": "xyzbc_switchkins_sub.ngc",
|
|
"statement": "g0 x+20 y+20 z#<zmax>",
|
|
"motionType": "rapid",
|
|
"activeKinematics": "identity",
|
|
"tcp": {
|
|
"x": -2.168036722338786,
|
|
"y": 2.1680367223387855,
|
|
"z": 8.42394967444494
|
|
},
|
|
"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
|
|
}
|
|
}
|
|
},
|
|
"programUiExecution": {
|
|
"apiName": "web-rtcp-5axis-ui-gcode-live-execution",
|
|
"status": "running",
|
|
"source": "programAxisPreviewPath.samples",
|
|
"samplePeriodMs": 50,
|
|
"sampleIndex": 1,
|
|
"sampleCount": 1300,
|
|
"executedSampleCount": 2,
|
|
"timeMs": 50,
|
|
"activeProgram": "configs/sim/axis/vismach/5axis/table-rotary-tilting/demos/xyzbc_switchkins.ngc",
|
|
"sourceFile": "xyzbc_switchkins_sub.ngc",
|
|
"line": 18,
|
|
"statement": "g0 x+20 y+20 z#<zmax>",
|
|
"operation": "rapid-to-quadrant-center",
|
|
"executionIndex": 4,
|
|
"gcodeStepIndex": 18,
|
|
"segmentIndex": 1,
|
|
"motionType": "rapid",
|
|
"activeKinematics": "identity",
|
|
"joint": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 8.94254,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"tcp": {
|
|
"x": -2.168036722338786,
|
|
"y": 2.1680367223387855,
|
|
"z": 8.42394967444494
|
|
},
|
|
"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"
|
|
},
|
|
"axisPose": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 8.94254,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"tcpPose": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 8.94254,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"toolAxisVector": {
|
|
"x": 0.24184476264797528,
|
|
"y": 0.24184476264797522,
|
|
"z": 0.9396926207859084
|
|
},
|
|
"canvas": {
|
|
"toolhead": "{\"x\":-0.002,\"y\":0.002,\"z\":0.008}",
|
|
"tcpPose": "{\"x\":0,\"y\":0,\"z\":8.943,\"a\":0,\"b\":20,\"c\":45}",
|
|
"toolAxis": "{\"x\":0.242,\"y\":0.242,\"z\":0.94}",
|
|
"executedPathPoints": "0",
|
|
"pathPoints": "1300"
|
|
},
|
|
"frame": "frame-0015.png",
|
|
"captureStartedMs": 1783110130928,
|
|
"captureDurationMs": 91,
|
|
"intervalSincePreviousMs": 125
|
|
},
|
|
{
|
|
"wallClock": "2026-07-03T20:22:11.030Z",
|
|
"perfNow": 3622.2000000029802,
|
|
"runState": "running",
|
|
"mode": "auto",
|
|
"interpState": "reading",
|
|
"activeLine": 18,
|
|
"programElapsedSeconds": 0.356,
|
|
"programRemainingSeconds": 61.10500000000001,
|
|
"motionIndex": 1,
|
|
"sampleIndex": 1,
|
|
"programSourceMode": "linuxcnc-machine-file-remap-wasm",
|
|
"executionSourceMode": "linuxcnc-task-motion-hal-wasm",
|
|
"motionCount": 29,
|
|
"message": "task/HAL status tick 49",
|
|
"task": {
|
|
"state": "ON",
|
|
"mode": "AUTO",
|
|
"interpState": "READING",
|
|
"execState": "WAITING_FOR_MOTION",
|
|
"taskPaused": false,
|
|
"singleStepping": false,
|
|
"cycle": 253,
|
|
"openProgram": "/work/sim/axis/vismach/5axis/table-rotary-tilting/xyzbc-trt/demos/xyzbc_switchkins.ngc",
|
|
"openedLineCount": 3,
|
|
"openedSourceLineCount": 44,
|
|
"executableLineCount": 2,
|
|
"nextProgramLine": 17
|
|
},
|
|
"ui": {
|
|
"taskState": "on",
|
|
"taskMode": "auto",
|
|
"interpState": "reading",
|
|
"execState": "waiting_for_motion",
|
|
"taskCycle": 0,
|
|
"servoCycle": 2530,
|
|
"motionQueueDepth": 0,
|
|
"halChangedPinCount": 0,
|
|
"activeLine": 17,
|
|
"motionProgramLine": 17,
|
|
"halProgramLine": 17,
|
|
"activeLineSource": "motion-status",
|
|
"activeLineHalSynced": true,
|
|
"switchkinsType": 0,
|
|
"axisPose": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 8.89848,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"axisPoseFrame": "work",
|
|
"currentVelocity": 1000.002
|
|
},
|
|
"feedback": {
|
|
"apiName": "web-rtcp-5axis-program-runtime-feedback",
|
|
"sourceMode": "linuxcnc-task-motion-hal-wasm",
|
|
"semanticBoundary": "linuxcnc_task_motion_hal_wasm_simulation_runtime",
|
|
"sampleIndex": 1,
|
|
"motionIndex": 1,
|
|
"line": 18,
|
|
"motionProgramLine": 17,
|
|
"halProgramLine": 17,
|
|
"activeLineSource": "motion-status",
|
|
"activeLineHalSynced": true,
|
|
"type": "TASK_MOTION",
|
|
"timeSeconds": 0,
|
|
"axisPose": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 8.89848,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"currentVelocityMmPerMin": 1000.002,
|
|
"requestedVelocityMmPerMin": 1000.002,
|
|
"distanceToGo": 0,
|
|
"dtg": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 0
|
|
},
|
|
"queueDepth": 0,
|
|
"activeDepth": 0,
|
|
"cycle": 2530,
|
|
"taskCycle": 253,
|
|
"halChangedPinCount": 0,
|
|
"sourceFile": "xyzbc_switchkins_sub.ngc",
|
|
"statement": "g0 x+20 y+20 z#<zmax>",
|
|
"motionType": "rapid",
|
|
"activeKinematics": "identity",
|
|
"tcp": {
|
|
"x": -2.15737862364889,
|
|
"y": 2.1573786236488894,
|
|
"z": 8.382537420646905
|
|
},
|
|
"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
|
|
}
|
|
}
|
|
},
|
|
"programUiExecution": {
|
|
"apiName": "web-rtcp-5axis-ui-gcode-live-execution",
|
|
"status": "running",
|
|
"source": "programAxisPreviewPath.samples",
|
|
"samplePeriodMs": 50,
|
|
"sampleIndex": 1,
|
|
"sampleCount": 1300,
|
|
"executedSampleCount": 2,
|
|
"timeMs": 50,
|
|
"activeProgram": "configs/sim/axis/vismach/5axis/table-rotary-tilting/demos/xyzbc_switchkins.ngc",
|
|
"sourceFile": "xyzbc_switchkins_sub.ngc",
|
|
"line": 18,
|
|
"statement": "g0 x+20 y+20 z#<zmax>",
|
|
"operation": "rapid-to-quadrant-center",
|
|
"executionIndex": 4,
|
|
"gcodeStepIndex": 18,
|
|
"segmentIndex": 1,
|
|
"motionType": "rapid",
|
|
"activeKinematics": "identity",
|
|
"joint": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 8.89848,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"tcp": {
|
|
"x": -2.15737862364889,
|
|
"y": 2.1573786236488894,
|
|
"z": 8.382537420646905
|
|
},
|
|
"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"
|
|
},
|
|
"axisPose": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 8.89848,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"tcpPose": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 8.89848,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"toolAxisVector": {
|
|
"x": 0.24184476264797528,
|
|
"y": 0.24184476264797522,
|
|
"z": 0.9396926207859084
|
|
},
|
|
"canvas": {
|
|
"toolhead": "{\"x\":-0.002,\"y\":0.002,\"z\":0.008}",
|
|
"tcpPose": "{\"x\":0,\"y\":0,\"z\":8.898,\"a\":0,\"b\":20,\"c\":45}",
|
|
"toolAxis": "{\"x\":0.242,\"y\":0.242,\"z\":0.94}",
|
|
"executedPathPoints": "0",
|
|
"pathPoints": "1300"
|
|
},
|
|
"frame": "frame-0016.png",
|
|
"captureStartedMs": 1783110131019,
|
|
"captureDurationMs": 135,
|
|
"intervalSincePreviousMs": 91
|
|
},
|
|
{
|
|
"wallClock": "2026-07-03T20:22:11.159Z",
|
|
"perfNow": 3751,
|
|
"runState": "running",
|
|
"mode": "auto",
|
|
"interpState": "reading",
|
|
"activeLine": 18,
|
|
"programElapsedSeconds": 0.356,
|
|
"programRemainingSeconds": 61.10500000000001,
|
|
"motionIndex": 1,
|
|
"sampleIndex": 1,
|
|
"programSourceMode": "linuxcnc-machine-file-remap-wasm",
|
|
"executionSourceMode": "linuxcnc-task-motion-hal-wasm",
|
|
"motionCount": 29,
|
|
"message": "task/HAL status tick 52",
|
|
"task": {
|
|
"state": "ON",
|
|
"mode": "AUTO",
|
|
"interpState": "READING",
|
|
"execState": "WAITING_FOR_MOTION",
|
|
"taskPaused": false,
|
|
"singleStepping": false,
|
|
"cycle": 268,
|
|
"openProgram": "/work/sim/axis/vismach/5axis/table-rotary-tilting/xyzbc-trt/demos/xyzbc_switchkins.ngc",
|
|
"openedLineCount": 3,
|
|
"openedSourceLineCount": 44,
|
|
"executableLineCount": 2,
|
|
"nextProgramLine": 17
|
|
},
|
|
"ui": {
|
|
"taskState": "on",
|
|
"taskMode": "auto",
|
|
"interpState": "reading",
|
|
"execState": "waiting_for_motion",
|
|
"taskCycle": 0,
|
|
"servoCycle": 2680,
|
|
"motionQueueDepth": 0,
|
|
"halChangedPinCount": 0,
|
|
"activeLine": 17,
|
|
"motionProgramLine": 17,
|
|
"halProgramLine": 17,
|
|
"activeLineSource": "motion-status",
|
|
"activeLineHalSynced": true,
|
|
"switchkinsType": 0,
|
|
"axisPose": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 8.83239,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"axisPoseFrame": "work",
|
|
"currentVelocity": 1000.002
|
|
},
|
|
"feedback": {
|
|
"apiName": "web-rtcp-5axis-program-runtime-feedback",
|
|
"sourceMode": "linuxcnc-task-motion-hal-wasm",
|
|
"semanticBoundary": "linuxcnc_task_motion_hal_wasm_simulation_runtime",
|
|
"sampleIndex": 1,
|
|
"motionIndex": 1,
|
|
"line": 18,
|
|
"motionProgramLine": 17,
|
|
"halProgramLine": 17,
|
|
"activeLineSource": "motion-status",
|
|
"activeLineHalSynced": true,
|
|
"type": "TASK_MOTION",
|
|
"timeSeconds": 0,
|
|
"axisPose": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 8.83239,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"currentVelocityMmPerMin": 1000.002,
|
|
"requestedVelocityMmPerMin": 1000.002,
|
|
"distanceToGo": 0,
|
|
"dtg": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 0
|
|
},
|
|
"queueDepth": 0,
|
|
"activeDepth": 0,
|
|
"cycle": 2680,
|
|
"taskCycle": 268,
|
|
"halChangedPinCount": 0,
|
|
"sourceFile": "xyzbc_switchkins_sub.ngc",
|
|
"statement": "g0 x+20 y+20 z#<zmax>",
|
|
"motionType": "rapid",
|
|
"activeKinematics": "identity",
|
|
"tcp": {
|
|
"x": -2.141395103285485,
|
|
"y": 2.1413951032854848,
|
|
"z": 8.320433135339163
|
|
},
|
|
"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
|
|
}
|
|
}
|
|
},
|
|
"programUiExecution": {
|
|
"apiName": "web-rtcp-5axis-ui-gcode-live-execution",
|
|
"status": "running",
|
|
"source": "programAxisPreviewPath.samples",
|
|
"samplePeriodMs": 50,
|
|
"sampleIndex": 1,
|
|
"sampleCount": 1300,
|
|
"executedSampleCount": 2,
|
|
"timeMs": 50,
|
|
"activeProgram": "configs/sim/axis/vismach/5axis/table-rotary-tilting/demos/xyzbc_switchkins.ngc",
|
|
"sourceFile": "xyzbc_switchkins_sub.ngc",
|
|
"line": 18,
|
|
"statement": "g0 x+20 y+20 z#<zmax>",
|
|
"operation": "rapid-to-quadrant-center",
|
|
"executionIndex": 4,
|
|
"gcodeStepIndex": 18,
|
|
"segmentIndex": 1,
|
|
"motionType": "rapid",
|
|
"activeKinematics": "identity",
|
|
"joint": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 8.83239,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"tcp": {
|
|
"x": -2.141395103285485,
|
|
"y": 2.1413951032854848,
|
|
"z": 8.320433135339163
|
|
},
|
|
"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"
|
|
},
|
|
"axisPose": {
|
|
"x": -2.1360672631643505,
|
|
"y": 2.13606726316435,
|
|
"z": 8.29973170690325,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"tcpPose": {
|
|
"x": -2.1360672631643505,
|
|
"y": 2.13606726316435,
|
|
"z": 8.29973170690325,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"toolAxisVector": {
|
|
"x": 0.24184476264797528,
|
|
"y": 0.24184476264797522,
|
|
"z": 0.9396926207859084
|
|
},
|
|
"canvas": {
|
|
"toolhead": "{\"x\":-0.002,\"y\":0.002,\"z\":0.008}",
|
|
"tcpPose": "{\"x\":-2.136,\"y\":2.136,\"z\":8.3,\"a\":0,\"b\":20,\"c\":45}",
|
|
"toolAxis": "{\"x\":0.242,\"y\":0.242,\"z\":0.94}",
|
|
"executedPathPoints": "0",
|
|
"pathPoints": "1300"
|
|
},
|
|
"frame": "frame-0017.png",
|
|
"captureStartedMs": 1783110131154,
|
|
"captureDurationMs": 110,
|
|
"intervalSincePreviousMs": 135
|
|
},
|
|
{
|
|
"wallClock": "2026-07-03T20:22:11.270Z",
|
|
"perfNow": 3862.300000000745,
|
|
"runState": "running",
|
|
"mode": "auto",
|
|
"interpState": "reading",
|
|
"activeLine": 18,
|
|
"programElapsedSeconds": 0.356,
|
|
"programRemainingSeconds": 61.10500000000001,
|
|
"motionIndex": 1,
|
|
"sampleIndex": 1,
|
|
"programSourceMode": "linuxcnc-machine-file-remap-wasm",
|
|
"executionSourceMode": "linuxcnc-task-motion-hal-wasm",
|
|
"motionCount": 29,
|
|
"message": "task/HAL status tick 55",
|
|
"task": {
|
|
"state": "ON",
|
|
"mode": "AUTO",
|
|
"interpState": "READING",
|
|
"execState": "WAITING_FOR_MOTION",
|
|
"taskPaused": false,
|
|
"singleStepping": false,
|
|
"cycle": 283,
|
|
"openProgram": "/work/sim/axis/vismach/5axis/table-rotary-tilting/xyzbc-trt/demos/xyzbc_switchkins.ngc",
|
|
"openedLineCount": 3,
|
|
"openedSourceLineCount": 44,
|
|
"executableLineCount": 2,
|
|
"nextProgramLine": 17
|
|
},
|
|
"ui": {
|
|
"taskState": "on",
|
|
"taskMode": "auto",
|
|
"interpState": "reading",
|
|
"execState": "waiting_for_motion",
|
|
"taskCycle": 0,
|
|
"servoCycle": 2830,
|
|
"motionQueueDepth": 0,
|
|
"halChangedPinCount": 0,
|
|
"activeLine": 17,
|
|
"motionProgramLine": 17,
|
|
"halProgramLine": 17,
|
|
"activeLineSource": "motion-status",
|
|
"activeLineHalSynced": true,
|
|
"switchkinsType": 0,
|
|
"axisPose": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 8.7663,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"axisPoseFrame": "work",
|
|
"currentVelocity": 1000.002
|
|
},
|
|
"feedback": {
|
|
"apiName": "web-rtcp-5axis-program-runtime-feedback",
|
|
"sourceMode": "linuxcnc-task-motion-hal-wasm",
|
|
"semanticBoundary": "linuxcnc_task_motion_hal_wasm_simulation_runtime",
|
|
"sampleIndex": 1,
|
|
"motionIndex": 1,
|
|
"line": 18,
|
|
"motionProgramLine": 17,
|
|
"halProgramLine": 17,
|
|
"activeLineSource": "motion-status",
|
|
"activeLineHalSynced": true,
|
|
"type": "TASK_MOTION",
|
|
"timeSeconds": 0,
|
|
"axisPose": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 8.7663,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"currentVelocityMmPerMin": 1000.002,
|
|
"requestedVelocityMmPerMin": 1000.002,
|
|
"distanceToGo": 0,
|
|
"dtg": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 0
|
|
},
|
|
"queueDepth": 0,
|
|
"activeDepth": 0,
|
|
"cycle": 2830,
|
|
"taskCycle": 283,
|
|
"halChangedPinCount": 0,
|
|
"sourceFile": "xyzbc_switchkins_sub.ngc",
|
|
"statement": "g0 x+20 y+20 z#<zmax>",
|
|
"motionType": "rapid",
|
|
"activeKinematics": "identity",
|
|
"tcp": {
|
|
"x": -2.1254115829220805,
|
|
"y": 2.12541158292208,
|
|
"z": 8.258328850031424
|
|
},
|
|
"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
|
|
}
|
|
}
|
|
},
|
|
"programUiExecution": {
|
|
"apiName": "web-rtcp-5axis-ui-gcode-live-execution",
|
|
"status": "running",
|
|
"source": "programAxisPreviewPath.samples",
|
|
"samplePeriodMs": 50,
|
|
"sampleIndex": 1,
|
|
"sampleCount": 1300,
|
|
"executedSampleCount": 2,
|
|
"timeMs": 50,
|
|
"activeProgram": "configs/sim/axis/vismach/5axis/table-rotary-tilting/demos/xyzbc_switchkins.ngc",
|
|
"sourceFile": "xyzbc_switchkins_sub.ngc",
|
|
"line": 18,
|
|
"statement": "g0 x+20 y+20 z#<zmax>",
|
|
"operation": "rapid-to-quadrant-center",
|
|
"executionIndex": 4,
|
|
"gcodeStepIndex": 18,
|
|
"segmentIndex": 1,
|
|
"motionType": "rapid",
|
|
"activeKinematics": "identity",
|
|
"joint": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 8.7663,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"tcp": {
|
|
"x": -2.1254115829220805,
|
|
"y": 2.12541158292208,
|
|
"z": 8.258328850031424
|
|
},
|
|
"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"
|
|
},
|
|
"axisPose": {
|
|
"x": -2.1200837428009454,
|
|
"y": 2.120083742800945,
|
|
"z": 8.237627421595509,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"tcpPose": {
|
|
"x": -2.1200837428009454,
|
|
"y": 2.120083742800945,
|
|
"z": 8.237627421595509,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"toolAxisVector": {
|
|
"x": 0.24184476264797528,
|
|
"y": 0.24184476264797522,
|
|
"z": 0.9396926207859084
|
|
},
|
|
"canvas": {
|
|
"toolhead": "{\"x\":-0.002,\"y\":0.002,\"z\":0.008}",
|
|
"tcpPose": "{\"x\":-2.12,\"y\":2.12,\"z\":8.238,\"a\":0,\"b\":20,\"c\":45}",
|
|
"toolAxis": "{\"x\":0.242,\"y\":0.242,\"z\":0.94}",
|
|
"executedPathPoints": "0",
|
|
"pathPoints": "1300"
|
|
},
|
|
"frame": "frame-0018.png",
|
|
"captureStartedMs": 1783110131264,
|
|
"captureDurationMs": 153,
|
|
"intervalSincePreviousMs": 110
|
|
},
|
|
{
|
|
"wallClock": "2026-07-03T20:22:11.422Z",
|
|
"perfNow": 4013.900000002235,
|
|
"runState": "running",
|
|
"mode": "auto",
|
|
"interpState": "reading",
|
|
"activeLine": 18,
|
|
"programElapsedSeconds": 0.356,
|
|
"programRemainingSeconds": 61.10500000000001,
|
|
"motionIndex": 1,
|
|
"sampleIndex": 1,
|
|
"programSourceMode": "linuxcnc-machine-file-remap-wasm",
|
|
"executionSourceMode": "linuxcnc-task-motion-hal-wasm",
|
|
"motionCount": 29,
|
|
"message": "task/HAL status tick 59",
|
|
"task": {
|
|
"state": "ON",
|
|
"mode": "AUTO",
|
|
"interpState": "READING",
|
|
"execState": "WAITING_FOR_MOTION",
|
|
"taskPaused": false,
|
|
"singleStepping": false,
|
|
"cycle": 303,
|
|
"openProgram": "/work/sim/axis/vismach/5axis/table-rotary-tilting/xyzbc-trt/demos/xyzbc_switchkins.ngc",
|
|
"openedLineCount": 3,
|
|
"openedSourceLineCount": 44,
|
|
"executableLineCount": 2,
|
|
"nextProgramLine": 17
|
|
},
|
|
"ui": {
|
|
"taskState": "on",
|
|
"taskMode": "auto",
|
|
"interpState": "reading",
|
|
"execState": "waiting_for_motion",
|
|
"taskCycle": 0,
|
|
"servoCycle": 3030,
|
|
"motionQueueDepth": 0,
|
|
"halChangedPinCount": 0,
|
|
"activeLine": 17,
|
|
"motionProgramLine": 17,
|
|
"halProgramLine": 17,
|
|
"activeLineSource": "motion-status",
|
|
"activeLineHalSynced": true,
|
|
"switchkinsType": 0,
|
|
"axisPose": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 8.67818,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"axisPoseFrame": "work",
|
|
"currentVelocity": 1000.002
|
|
},
|
|
"feedback": {
|
|
"apiName": "web-rtcp-5axis-program-runtime-feedback",
|
|
"sourceMode": "linuxcnc-task-motion-hal-wasm",
|
|
"semanticBoundary": "linuxcnc_task_motion_hal_wasm_simulation_runtime",
|
|
"sampleIndex": 1,
|
|
"motionIndex": 1,
|
|
"line": 18,
|
|
"motionProgramLine": 17,
|
|
"halProgramLine": 17,
|
|
"activeLineSource": "motion-status",
|
|
"activeLineHalSynced": true,
|
|
"type": "TASK_MOTION",
|
|
"timeSeconds": 0,
|
|
"axisPose": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 8.67818,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"currentVelocityMmPerMin": 1000.002,
|
|
"requestedVelocityMmPerMin": 1000.002,
|
|
"distanceToGo": 0,
|
|
"dtg": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 0
|
|
},
|
|
"queueDepth": 0,
|
|
"activeDepth": 0,
|
|
"cycle": 3030,
|
|
"taskCycle": 303,
|
|
"halChangedPinCount": 0,
|
|
"sourceFile": "xyzbc_switchkins_sub.ngc",
|
|
"statement": "g0 x+20 y+20 z#<zmax>",
|
|
"motionType": "rapid",
|
|
"activeKinematics": "identity",
|
|
"tcp": {
|
|
"x": -2.104100222437541,
|
|
"y": 2.1041002224375407,
|
|
"z": 8.175523136287769
|
|
},
|
|
"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
|
|
}
|
|
}
|
|
},
|
|
"programUiExecution": {
|
|
"apiName": "web-rtcp-5axis-ui-gcode-live-execution",
|
|
"status": "running",
|
|
"source": "programAxisPreviewPath.samples",
|
|
"samplePeriodMs": 50,
|
|
"sampleIndex": 1,
|
|
"sampleCount": 1300,
|
|
"executedSampleCount": 2,
|
|
"timeMs": 50,
|
|
"activeProgram": "configs/sim/axis/vismach/5axis/table-rotary-tilting/demos/xyzbc_switchkins.ngc",
|
|
"sourceFile": "xyzbc_switchkins_sub.ngc",
|
|
"line": 18,
|
|
"statement": "g0 x+20 y+20 z#<zmax>",
|
|
"operation": "rapid-to-quadrant-center",
|
|
"executionIndex": 4,
|
|
"gcodeStepIndex": 18,
|
|
"segmentIndex": 1,
|
|
"motionType": "rapid",
|
|
"activeKinematics": "identity",
|
|
"joint": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 8.67818,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"tcp": {
|
|
"x": -2.104100222437541,
|
|
"y": 2.1041002224375407,
|
|
"z": 8.175523136287769
|
|
},
|
|
"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"
|
|
},
|
|
"axisPose": {
|
|
"x": -2.098772382316406,
|
|
"y": 2.0987723823164055,
|
|
"z": 8.154821707851854,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"tcpPose": {
|
|
"x": -2.098772382316406,
|
|
"y": 2.0987723823164055,
|
|
"z": 8.154821707851854,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"toolAxisVector": {
|
|
"x": 0.24184476264797528,
|
|
"y": 0.24184476264797522,
|
|
"z": 0.9396926207859084
|
|
},
|
|
"canvas": {
|
|
"toolhead": "{\"x\":-0.002,\"y\":0.002,\"z\":0.008}",
|
|
"tcpPose": "{\"x\":-2.099,\"y\":2.099,\"z\":8.155,\"a\":0,\"b\":20,\"c\":45}",
|
|
"toolAxis": "{\"x\":0.242,\"y\":0.242,\"z\":0.94}",
|
|
"executedPathPoints": "0",
|
|
"pathPoints": "1300"
|
|
},
|
|
"frame": "frame-0019.png",
|
|
"captureStartedMs": 1783110131417,
|
|
"captureDurationMs": 114,
|
|
"intervalSincePreviousMs": 153
|
|
},
|
|
{
|
|
"wallClock": "2026-07-03T20:22:11.536Z",
|
|
"perfNow": 4128.5,
|
|
"runState": "running",
|
|
"mode": "auto",
|
|
"interpState": "reading",
|
|
"activeLine": 18,
|
|
"programElapsedSeconds": 0.356,
|
|
"programRemainingSeconds": 61.10500000000001,
|
|
"motionIndex": 1,
|
|
"sampleIndex": 1,
|
|
"programSourceMode": "linuxcnc-machine-file-remap-wasm",
|
|
"executionSourceMode": "linuxcnc-task-motion-hal-wasm",
|
|
"motionCount": 29,
|
|
"message": "task/HAL status tick 62",
|
|
"task": {
|
|
"state": "ON",
|
|
"mode": "AUTO",
|
|
"interpState": "READING",
|
|
"execState": "WAITING_FOR_MOTION",
|
|
"taskPaused": false,
|
|
"singleStepping": false,
|
|
"cycle": 318,
|
|
"openProgram": "/work/sim/axis/vismach/5axis/table-rotary-tilting/xyzbc-trt/demos/xyzbc_switchkins.ngc",
|
|
"openedLineCount": 3,
|
|
"openedSourceLineCount": 44,
|
|
"executableLineCount": 2,
|
|
"nextProgramLine": 17
|
|
},
|
|
"ui": {
|
|
"taskState": "on",
|
|
"taskMode": "auto",
|
|
"interpState": "reading",
|
|
"execState": "waiting_for_motion",
|
|
"taskCycle": 0,
|
|
"servoCycle": 3180,
|
|
"motionQueueDepth": 0,
|
|
"halChangedPinCount": 0,
|
|
"activeLine": 17,
|
|
"motionProgramLine": 17,
|
|
"halProgramLine": 17,
|
|
"activeLineSource": "motion-status",
|
|
"activeLineHalSynced": true,
|
|
"switchkinsType": 0,
|
|
"axisPose": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 8.61209,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"axisPoseFrame": "work",
|
|
"currentVelocity": 1000.002
|
|
},
|
|
"feedback": {
|
|
"apiName": "web-rtcp-5axis-program-runtime-feedback",
|
|
"sourceMode": "linuxcnc-task-motion-hal-wasm",
|
|
"semanticBoundary": "linuxcnc_task_motion_hal_wasm_simulation_runtime",
|
|
"sampleIndex": 1,
|
|
"motionIndex": 1,
|
|
"line": 18,
|
|
"motionProgramLine": 17,
|
|
"halProgramLine": 17,
|
|
"activeLineSource": "motion-status",
|
|
"activeLineHalSynced": true,
|
|
"type": "TASK_MOTION",
|
|
"timeSeconds": 0,
|
|
"axisPose": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 8.61209,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"currentVelocityMmPerMin": 1000.002,
|
|
"requestedVelocityMmPerMin": 1000.002,
|
|
"distanceToGo": 0,
|
|
"dtg": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 0
|
|
},
|
|
"queueDepth": 0,
|
|
"activeDepth": 0,
|
|
"cycle": 3180,
|
|
"taskCycle": 318,
|
|
"halChangedPinCount": 0,
|
|
"sourceFile": "xyzbc_switchkins_sub.ngc",
|
|
"statement": "g0 x+20 y+20 z#<zmax>",
|
|
"motionType": "rapid",
|
|
"activeKinematics": "identity",
|
|
"tcp": {
|
|
"x": -2.088116702074136,
|
|
"y": 2.0881167020741356,
|
|
"z": 8.113418850980027
|
|
},
|
|
"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
|
|
}
|
|
}
|
|
},
|
|
"programUiExecution": {
|
|
"apiName": "web-rtcp-5axis-ui-gcode-live-execution",
|
|
"status": "running",
|
|
"source": "programAxisPreviewPath.samples",
|
|
"samplePeriodMs": 50,
|
|
"sampleIndex": 1,
|
|
"sampleCount": 1300,
|
|
"executedSampleCount": 2,
|
|
"timeMs": 50,
|
|
"activeProgram": "configs/sim/axis/vismach/5axis/table-rotary-tilting/demos/xyzbc_switchkins.ngc",
|
|
"sourceFile": "xyzbc_switchkins_sub.ngc",
|
|
"line": 18,
|
|
"statement": "g0 x+20 y+20 z#<zmax>",
|
|
"operation": "rapid-to-quadrant-center",
|
|
"executionIndex": 4,
|
|
"gcodeStepIndex": 18,
|
|
"segmentIndex": 1,
|
|
"motionType": "rapid",
|
|
"activeKinematics": "identity",
|
|
"joint": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 8.61209,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"tcp": {
|
|
"x": -2.088116702074136,
|
|
"y": 2.0881167020741356,
|
|
"z": 8.113418850980027
|
|
},
|
|
"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"
|
|
},
|
|
"axisPose": {
|
|
"x": -2.0827888619530013,
|
|
"y": 2.082788861953001,
|
|
"z": 8.092717422544114,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"tcpPose": {
|
|
"x": -2.0827888619530013,
|
|
"y": 2.082788861953001,
|
|
"z": 8.092717422544114,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"toolAxisVector": {
|
|
"x": 0.24184476264797528,
|
|
"y": 0.24184476264797522,
|
|
"z": 0.9396926207859084
|
|
},
|
|
"canvas": {
|
|
"toolhead": "{\"x\":-0.002,\"y\":0.002,\"z\":0.008}",
|
|
"tcpPose": "{\"x\":-2.083,\"y\":2.083,\"z\":8.093,\"a\":0,\"b\":20,\"c\":45}",
|
|
"toolAxis": "{\"x\":0.242,\"y\":0.242,\"z\":0.94}",
|
|
"executedPathPoints": "0",
|
|
"pathPoints": "1300"
|
|
},
|
|
"frame": "frame-0020.png",
|
|
"captureStartedMs": 1783110131531,
|
|
"captureDurationMs": 126,
|
|
"intervalSincePreviousMs": 114
|
|
},
|
|
{
|
|
"wallClock": "2026-07-03T20:22:11.675Z",
|
|
"perfNow": 4266.900000002235,
|
|
"runState": "running",
|
|
"mode": "auto",
|
|
"interpState": "reading",
|
|
"activeLine": 18,
|
|
"programElapsedSeconds": 0.356,
|
|
"programRemainingSeconds": 61.10500000000001,
|
|
"motionIndex": 1,
|
|
"sampleIndex": 1,
|
|
"programSourceMode": "linuxcnc-machine-file-remap-wasm",
|
|
"executionSourceMode": "linuxcnc-task-motion-hal-wasm",
|
|
"motionCount": 29,
|
|
"message": "task/HAL status tick 66",
|
|
"task": {
|
|
"state": "ON",
|
|
"mode": "AUTO",
|
|
"interpState": "READING",
|
|
"execState": "WAITING_FOR_MOTION",
|
|
"taskPaused": false,
|
|
"singleStepping": false,
|
|
"cycle": 338,
|
|
"openProgram": "/work/sim/axis/vismach/5axis/table-rotary-tilting/xyzbc-trt/demos/xyzbc_switchkins.ngc",
|
|
"openedLineCount": 3,
|
|
"openedSourceLineCount": 44,
|
|
"executableLineCount": 2,
|
|
"nextProgramLine": 17
|
|
},
|
|
"ui": {
|
|
"taskState": "on",
|
|
"taskMode": "auto",
|
|
"interpState": "reading",
|
|
"execState": "waiting_for_motion",
|
|
"taskCycle": 0,
|
|
"servoCycle": 3380,
|
|
"motionQueueDepth": 0,
|
|
"halChangedPinCount": 0,
|
|
"activeLine": 17,
|
|
"motionProgramLine": 17,
|
|
"halProgramLine": 17,
|
|
"activeLineSource": "motion-status",
|
|
"activeLineHalSynced": true,
|
|
"switchkinsType": 0,
|
|
"axisPose": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 8.52397,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"axisPoseFrame": "work",
|
|
"currentVelocity": 1000.002
|
|
},
|
|
"feedback": {
|
|
"apiName": "web-rtcp-5axis-program-runtime-feedback",
|
|
"sourceMode": "linuxcnc-task-motion-hal-wasm",
|
|
"semanticBoundary": "linuxcnc_task_motion_hal_wasm_simulation_runtime",
|
|
"sampleIndex": 1,
|
|
"motionIndex": 1,
|
|
"line": 18,
|
|
"motionProgramLine": 17,
|
|
"halProgramLine": 17,
|
|
"activeLineSource": "motion-status",
|
|
"activeLineHalSynced": true,
|
|
"type": "TASK_MOTION",
|
|
"timeSeconds": 0,
|
|
"axisPose": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 8.52397,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"currentVelocityMmPerMin": 1000.002,
|
|
"requestedVelocityMmPerMin": 1000.002,
|
|
"distanceToGo": 0,
|
|
"dtg": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 0
|
|
},
|
|
"queueDepth": 0,
|
|
"activeDepth": 0,
|
|
"cycle": 3380,
|
|
"taskCycle": 338,
|
|
"halChangedPinCount": 0,
|
|
"sourceFile": "xyzbc_switchkins_sub.ngc",
|
|
"statement": "g0 x+20 y+20 z#<zmax>",
|
|
"motionType": "rapid",
|
|
"activeKinematics": "identity",
|
|
"tcp": {
|
|
"x": -2.0668053415895966,
|
|
"y": 2.066805341589596,
|
|
"z": 8.030613137236372
|
|
},
|
|
"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
|
|
}
|
|
}
|
|
},
|
|
"programUiExecution": {
|
|
"apiName": "web-rtcp-5axis-ui-gcode-live-execution",
|
|
"status": "running",
|
|
"source": "programAxisPreviewPath.samples",
|
|
"samplePeriodMs": 50,
|
|
"sampleIndex": 1,
|
|
"sampleCount": 1300,
|
|
"executedSampleCount": 2,
|
|
"timeMs": 50,
|
|
"activeProgram": "configs/sim/axis/vismach/5axis/table-rotary-tilting/demos/xyzbc_switchkins.ngc",
|
|
"sourceFile": "xyzbc_switchkins_sub.ngc",
|
|
"line": 18,
|
|
"statement": "g0 x+20 y+20 z#<zmax>",
|
|
"operation": "rapid-to-quadrant-center",
|
|
"executionIndex": 4,
|
|
"gcodeStepIndex": 18,
|
|
"segmentIndex": 1,
|
|
"motionType": "rapid",
|
|
"activeKinematics": "identity",
|
|
"joint": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 8.52397,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"tcp": {
|
|
"x": -2.0668053415895966,
|
|
"y": 2.066805341589596,
|
|
"z": 8.030613137236372
|
|
},
|
|
"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"
|
|
},
|
|
"axisPose": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 8.52397,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"tcpPose": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 8.52397,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"toolAxisVector": {
|
|
"x": 0.24184476264797528,
|
|
"y": 0.24184476264797522,
|
|
"z": 0.9396926207859084
|
|
},
|
|
"canvas": {
|
|
"toolhead": "{\"x\":-0.002,\"y\":0.002,\"z\":0.008}",
|
|
"tcpPose": "{\"x\":0,\"y\":0,\"z\":8.524,\"a\":0,\"b\":20,\"c\":45}",
|
|
"toolAxis": "{\"x\":0.242,\"y\":0.242,\"z\":0.94}",
|
|
"executedPathPoints": "0",
|
|
"pathPoints": "1300"
|
|
},
|
|
"frame": "frame-0021.png",
|
|
"captureStartedMs": 1783110131657,
|
|
"captureDurationMs": 137,
|
|
"intervalSincePreviousMs": 126
|
|
},
|
|
{
|
|
"wallClock": "2026-07-03T20:22:11.804Z",
|
|
"perfNow": 4396.5,
|
|
"runState": "running",
|
|
"mode": "auto",
|
|
"interpState": "reading",
|
|
"activeLine": 18,
|
|
"programElapsedSeconds": 0.356,
|
|
"programRemainingSeconds": 61.10500000000001,
|
|
"motionIndex": 1,
|
|
"sampleIndex": 1,
|
|
"programSourceMode": "linuxcnc-machine-file-remap-wasm",
|
|
"executionSourceMode": "linuxcnc-task-motion-hal-wasm",
|
|
"motionCount": 29,
|
|
"message": "task/HAL status tick 69",
|
|
"task": {
|
|
"state": "ON",
|
|
"mode": "AUTO",
|
|
"interpState": "READING",
|
|
"execState": "WAITING_FOR_MOTION",
|
|
"taskPaused": false,
|
|
"singleStepping": false,
|
|
"cycle": 353,
|
|
"openProgram": "/work/sim/axis/vismach/5axis/table-rotary-tilting/xyzbc-trt/demos/xyzbc_switchkins.ngc",
|
|
"openedLineCount": 3,
|
|
"openedSourceLineCount": 44,
|
|
"executableLineCount": 2,
|
|
"nextProgramLine": 17
|
|
},
|
|
"ui": {
|
|
"taskState": "on",
|
|
"taskMode": "auto",
|
|
"interpState": "reading",
|
|
"execState": "waiting_for_motion",
|
|
"taskCycle": 0,
|
|
"servoCycle": 3530,
|
|
"motionQueueDepth": 0,
|
|
"halChangedPinCount": 0,
|
|
"activeLine": 17,
|
|
"motionProgramLine": 17,
|
|
"halProgramLine": 17,
|
|
"activeLineSource": "motion-status",
|
|
"activeLineHalSynced": true,
|
|
"switchkinsType": 0,
|
|
"axisPose": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 8.45788,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"axisPoseFrame": "work",
|
|
"currentVelocity": 1000.002
|
|
},
|
|
"feedback": {
|
|
"apiName": "web-rtcp-5axis-program-runtime-feedback",
|
|
"sourceMode": "linuxcnc-task-motion-hal-wasm",
|
|
"semanticBoundary": "linuxcnc_task_motion_hal_wasm_simulation_runtime",
|
|
"sampleIndex": 1,
|
|
"motionIndex": 1,
|
|
"line": 18,
|
|
"motionProgramLine": 17,
|
|
"halProgramLine": 17,
|
|
"activeLineSource": "motion-status",
|
|
"activeLineHalSynced": true,
|
|
"type": "TASK_MOTION",
|
|
"timeSeconds": 0,
|
|
"axisPose": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 8.45788,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"currentVelocityMmPerMin": 1000.002,
|
|
"requestedVelocityMmPerMin": 1000.002,
|
|
"distanceToGo": 0,
|
|
"dtg": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 0
|
|
},
|
|
"queueDepth": 0,
|
|
"activeDepth": 0,
|
|
"cycle": 3530,
|
|
"taskCycle": 353,
|
|
"halChangedPinCount": 0,
|
|
"sourceFile": "xyzbc_switchkins_sub.ngc",
|
|
"statement": "g0 x+20 y+20 z#<zmax>",
|
|
"motionType": "rapid",
|
|
"activeKinematics": "identity",
|
|
"tcp": {
|
|
"x": -2.050821821226192,
|
|
"y": 2.0508218212261915,
|
|
"z": 7.968508851928633
|
|
},
|
|
"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
|
|
}
|
|
}
|
|
},
|
|
"programUiExecution": {
|
|
"apiName": "web-rtcp-5axis-ui-gcode-live-execution",
|
|
"status": "running",
|
|
"source": "programAxisPreviewPath.samples",
|
|
"samplePeriodMs": 50,
|
|
"sampleIndex": 1,
|
|
"sampleCount": 1300,
|
|
"executedSampleCount": 2,
|
|
"timeMs": 50,
|
|
"activeProgram": "configs/sim/axis/vismach/5axis/table-rotary-tilting/demos/xyzbc_switchkins.ngc",
|
|
"sourceFile": "xyzbc_switchkins_sub.ngc",
|
|
"line": 18,
|
|
"statement": "g0 x+20 y+20 z#<zmax>",
|
|
"operation": "rapid-to-quadrant-center",
|
|
"executionIndex": 4,
|
|
"gcodeStepIndex": 18,
|
|
"segmentIndex": 1,
|
|
"motionType": "rapid",
|
|
"activeKinematics": "identity",
|
|
"joint": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 8.45788,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"tcp": {
|
|
"x": -2.050821821226192,
|
|
"y": 2.0508218212261915,
|
|
"z": 7.968508851928633
|
|
},
|
|
"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"
|
|
},
|
|
"axisPose": {
|
|
"x": -2.0454939811050568,
|
|
"y": 2.0454939811050563,
|
|
"z": 7.947807423492718,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"tcpPose": {
|
|
"x": -2.0454939811050568,
|
|
"y": 2.0454939811050563,
|
|
"z": 7.947807423492718,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"toolAxisVector": {
|
|
"x": 0.24184476264797528,
|
|
"y": 0.24184476264797522,
|
|
"z": 0.9396926207859084
|
|
},
|
|
"canvas": {
|
|
"toolhead": "{\"x\":-0.002,\"y\":0.002,\"z\":0.008}",
|
|
"tcpPose": "{\"x\":-2.045,\"y\":2.045,\"z\":7.948,\"a\":0,\"b\":20,\"c\":45}",
|
|
"toolAxis": "{\"x\":0.242,\"y\":0.242,\"z\":0.94}",
|
|
"executedPathPoints": "0",
|
|
"pathPoints": "1300"
|
|
},
|
|
"frame": "frame-0022.png",
|
|
"captureStartedMs": 1783110131794,
|
|
"captureDurationMs": 150,
|
|
"intervalSincePreviousMs": 137
|
|
},
|
|
{
|
|
"wallClock": "2026-07-03T20:22:11.958Z",
|
|
"perfNow": 4550.5,
|
|
"runState": "running",
|
|
"mode": "auto",
|
|
"interpState": "reading",
|
|
"activeLine": 18,
|
|
"programElapsedSeconds": 0.356,
|
|
"programRemainingSeconds": 61.10500000000001,
|
|
"motionIndex": 1,
|
|
"sampleIndex": 1,
|
|
"programSourceMode": "linuxcnc-machine-file-remap-wasm",
|
|
"executionSourceMode": "linuxcnc-task-motion-hal-wasm",
|
|
"motionCount": 29,
|
|
"message": "task/HAL status tick 73",
|
|
"task": {
|
|
"state": "ON",
|
|
"mode": "AUTO",
|
|
"interpState": "READING",
|
|
"execState": "WAITING_FOR_MOTION",
|
|
"taskPaused": false,
|
|
"singleStepping": false,
|
|
"cycle": 373,
|
|
"openProgram": "/work/sim/axis/vismach/5axis/table-rotary-tilting/xyzbc-trt/demos/xyzbc_switchkins.ngc",
|
|
"openedLineCount": 3,
|
|
"openedSourceLineCount": 44,
|
|
"executableLineCount": 2,
|
|
"nextProgramLine": 17
|
|
},
|
|
"ui": {
|
|
"taskState": "on",
|
|
"taskMode": "auto",
|
|
"interpState": "reading",
|
|
"execState": "waiting_for_motion",
|
|
"taskCycle": 0,
|
|
"servoCycle": 3730,
|
|
"motionQueueDepth": 0,
|
|
"halChangedPinCount": 0,
|
|
"activeLine": 17,
|
|
"motionProgramLine": 17,
|
|
"halProgramLine": 17,
|
|
"activeLineSource": "motion-status",
|
|
"activeLineHalSynced": true,
|
|
"switchkinsType": 0,
|
|
"axisPose": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 8.36976,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"axisPoseFrame": "work",
|
|
"currentVelocity": 1000.002
|
|
},
|
|
"feedback": {
|
|
"apiName": "web-rtcp-5axis-program-runtime-feedback",
|
|
"sourceMode": "linuxcnc-task-motion-hal-wasm",
|
|
"semanticBoundary": "linuxcnc_task_motion_hal_wasm_simulation_runtime",
|
|
"sampleIndex": 1,
|
|
"motionIndex": 1,
|
|
"line": 18,
|
|
"motionProgramLine": 17,
|
|
"halProgramLine": 17,
|
|
"activeLineSource": "motion-status",
|
|
"activeLineHalSynced": true,
|
|
"type": "TASK_MOTION",
|
|
"timeSeconds": 0,
|
|
"axisPose": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 8.36976,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"currentVelocityMmPerMin": 1000.002,
|
|
"requestedVelocityMmPerMin": 1000.002,
|
|
"distanceToGo": 0,
|
|
"dtg": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 0
|
|
},
|
|
"queueDepth": 0,
|
|
"activeDepth": 0,
|
|
"cycle": 3730,
|
|
"taskCycle": 373,
|
|
"halChangedPinCount": 0,
|
|
"sourceFile": "xyzbc_switchkins_sub.ngc",
|
|
"statement": "g0 x+20 y+20 z#<zmax>",
|
|
"motionType": "rapid",
|
|
"activeKinematics": "identity",
|
|
"tcp": {
|
|
"x": -2.0295104607416525,
|
|
"y": 2.029510460741652,
|
|
"z": 7.8857031381849785
|
|
},
|
|
"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
|
|
}
|
|
}
|
|
},
|
|
"programUiExecution": {
|
|
"apiName": "web-rtcp-5axis-ui-gcode-live-execution",
|
|
"status": "running",
|
|
"source": "programAxisPreviewPath.samples",
|
|
"samplePeriodMs": 50,
|
|
"sampleIndex": 1,
|
|
"sampleCount": 1300,
|
|
"executedSampleCount": 2,
|
|
"timeMs": 50,
|
|
"activeProgram": "configs/sim/axis/vismach/5axis/table-rotary-tilting/demos/xyzbc_switchkins.ngc",
|
|
"sourceFile": "xyzbc_switchkins_sub.ngc",
|
|
"line": 18,
|
|
"statement": "g0 x+20 y+20 z#<zmax>",
|
|
"operation": "rapid-to-quadrant-center",
|
|
"executionIndex": 4,
|
|
"gcodeStepIndex": 18,
|
|
"segmentIndex": 1,
|
|
"motionType": "rapid",
|
|
"activeKinematics": "identity",
|
|
"joint": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 8.36976,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"tcp": {
|
|
"x": -2.0295104607416525,
|
|
"y": 2.029510460741652,
|
|
"z": 7.8857031381849785
|
|
},
|
|
"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"
|
|
},
|
|
"axisPose": {
|
|
"x": -2.0241826206205173,
|
|
"y": 2.024182620620517,
|
|
"z": 7.865001709749064,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"tcpPose": {
|
|
"x": -2.0241826206205173,
|
|
"y": 2.024182620620517,
|
|
"z": 7.865001709749064,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"toolAxisVector": {
|
|
"x": 0.24184476264797528,
|
|
"y": 0.24184476264797522,
|
|
"z": 0.9396926207859084
|
|
},
|
|
"canvas": {
|
|
"toolhead": "{\"x\":-0.002,\"y\":0.002,\"z\":0.008}",
|
|
"tcpPose": "{\"x\":-2.024,\"y\":2.024,\"z\":7.865,\"a\":0,\"b\":20,\"c\":45}",
|
|
"toolAxis": "{\"x\":0.242,\"y\":0.242,\"z\":0.94}",
|
|
"executedPathPoints": "0",
|
|
"pathPoints": "1300"
|
|
},
|
|
"frame": "frame-0023.png",
|
|
"captureStartedMs": 1783110131944,
|
|
"captureDurationMs": 143,
|
|
"intervalSincePreviousMs": 150
|
|
},
|
|
{
|
|
"wallClock": "2026-07-03T20:22:12.091Z",
|
|
"perfNow": 4683.60000000149,
|
|
"runState": "running",
|
|
"mode": "auto",
|
|
"interpState": "reading",
|
|
"activeLine": 18,
|
|
"programElapsedSeconds": 0.356,
|
|
"programRemainingSeconds": 61.10500000000001,
|
|
"motionIndex": 1,
|
|
"sampleIndex": 1,
|
|
"programSourceMode": "linuxcnc-machine-file-remap-wasm",
|
|
"executionSourceMode": "linuxcnc-task-motion-hal-wasm",
|
|
"motionCount": 29,
|
|
"message": "task/HAL status tick 76",
|
|
"task": {
|
|
"state": "ON",
|
|
"mode": "AUTO",
|
|
"interpState": "READING",
|
|
"execState": "WAITING_FOR_MOTION",
|
|
"taskPaused": false,
|
|
"singleStepping": false,
|
|
"cycle": 388,
|
|
"openProgram": "/work/sim/axis/vismach/5axis/table-rotary-tilting/xyzbc-trt/demos/xyzbc_switchkins.ngc",
|
|
"openedLineCount": 3,
|
|
"openedSourceLineCount": 44,
|
|
"executableLineCount": 2,
|
|
"nextProgramLine": 17
|
|
},
|
|
"ui": {
|
|
"taskState": "on",
|
|
"taskMode": "auto",
|
|
"interpState": "reading",
|
|
"execState": "waiting_for_motion",
|
|
"taskCycle": 0,
|
|
"servoCycle": 3880,
|
|
"motionQueueDepth": 0,
|
|
"halChangedPinCount": 0,
|
|
"activeLine": 17,
|
|
"motionProgramLine": 17,
|
|
"halProgramLine": 17,
|
|
"activeLineSource": "motion-status",
|
|
"activeLineHalSynced": true,
|
|
"switchkinsType": 0,
|
|
"axisPose": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 8.30367,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"axisPoseFrame": "work",
|
|
"currentVelocity": 1000.002
|
|
},
|
|
"feedback": {
|
|
"apiName": "web-rtcp-5axis-program-runtime-feedback",
|
|
"sourceMode": "linuxcnc-task-motion-hal-wasm",
|
|
"semanticBoundary": "linuxcnc_task_motion_hal_wasm_simulation_runtime",
|
|
"sampleIndex": 1,
|
|
"motionIndex": 1,
|
|
"line": 18,
|
|
"motionProgramLine": 17,
|
|
"halProgramLine": 17,
|
|
"activeLineSource": "motion-status",
|
|
"activeLineHalSynced": true,
|
|
"type": "TASK_MOTION",
|
|
"timeSeconds": 0,
|
|
"axisPose": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 8.30367,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"currentVelocityMmPerMin": 1000.002,
|
|
"requestedVelocityMmPerMin": 1000.002,
|
|
"distanceToGo": 0,
|
|
"dtg": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 0
|
|
},
|
|
"queueDepth": 0,
|
|
"activeDepth": 0,
|
|
"cycle": 3880,
|
|
"taskCycle": 388,
|
|
"halChangedPinCount": 0,
|
|
"sourceFile": "xyzbc_switchkins_sub.ngc",
|
|
"statement": "g0 x+20 y+20 z#<zmax>",
|
|
"motionType": "rapid",
|
|
"activeKinematics": "identity",
|
|
"tcp": {
|
|
"x": -2.0135269403782474,
|
|
"y": 2.013526940378247,
|
|
"z": 7.823598852877237
|
|
},
|
|
"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
|
|
}
|
|
}
|
|
},
|
|
"programUiExecution": {
|
|
"apiName": "web-rtcp-5axis-ui-gcode-live-execution",
|
|
"status": "running",
|
|
"source": "programAxisPreviewPath.samples",
|
|
"samplePeriodMs": 50,
|
|
"sampleIndex": 1,
|
|
"sampleCount": 1300,
|
|
"executedSampleCount": 2,
|
|
"timeMs": 50,
|
|
"activeProgram": "configs/sim/axis/vismach/5axis/table-rotary-tilting/demos/xyzbc_switchkins.ngc",
|
|
"sourceFile": "xyzbc_switchkins_sub.ngc",
|
|
"line": 18,
|
|
"statement": "g0 x+20 y+20 z#<zmax>",
|
|
"operation": "rapid-to-quadrant-center",
|
|
"executionIndex": 4,
|
|
"gcodeStepIndex": 18,
|
|
"segmentIndex": 1,
|
|
"motionType": "rapid",
|
|
"activeKinematics": "identity",
|
|
"joint": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 8.30367,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"tcp": {
|
|
"x": -2.0135269403782474,
|
|
"y": 2.013526940378247,
|
|
"z": 7.823598852877237
|
|
},
|
|
"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"
|
|
},
|
|
"axisPose": {
|
|
"x": -2.008199100257113,
|
|
"y": 2.0081991002571127,
|
|
"z": 7.8028974244413245,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"tcpPose": {
|
|
"x": -2.008199100257113,
|
|
"y": 2.0081991002571127,
|
|
"z": 7.8028974244413245,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"toolAxisVector": {
|
|
"x": 0.24184476264797528,
|
|
"y": 0.24184476264797522,
|
|
"z": 0.9396926207859084
|
|
},
|
|
"canvas": {
|
|
"toolhead": "{\"x\":-0.002,\"y\":0.002,\"z\":0.008}",
|
|
"tcpPose": "{\"x\":-2.008,\"y\":2.008,\"z\":7.803,\"a\":0,\"b\":20,\"c\":45}",
|
|
"toolAxis": "{\"x\":0.242,\"y\":0.242,\"z\":0.94}",
|
|
"executedPathPoints": "0",
|
|
"pathPoints": "1300"
|
|
},
|
|
"frame": "frame-0024.png",
|
|
"captureStartedMs": 1783110132087,
|
|
"captureDurationMs": 145,
|
|
"intervalSincePreviousMs": 143
|
|
},
|
|
{
|
|
"wallClock": "2026-07-03T20:22:12.241Z",
|
|
"perfNow": 4833.5,
|
|
"runState": "running",
|
|
"mode": "auto",
|
|
"interpState": "reading",
|
|
"activeLine": 18,
|
|
"programElapsedSeconds": 0.356,
|
|
"programRemainingSeconds": 61.10500000000001,
|
|
"motionIndex": 1,
|
|
"sampleIndex": 1,
|
|
"programSourceMode": "linuxcnc-machine-file-remap-wasm",
|
|
"executionSourceMode": "linuxcnc-task-motion-hal-wasm",
|
|
"motionCount": 29,
|
|
"message": "task/HAL status tick 80",
|
|
"task": {
|
|
"state": "ON",
|
|
"mode": "AUTO",
|
|
"interpState": "READING",
|
|
"execState": "WAITING_FOR_MOTION",
|
|
"taskPaused": false,
|
|
"singleStepping": false,
|
|
"cycle": 408,
|
|
"openProgram": "/work/sim/axis/vismach/5axis/table-rotary-tilting/xyzbc-trt/demos/xyzbc_switchkins.ngc",
|
|
"openedLineCount": 3,
|
|
"openedSourceLineCount": 44,
|
|
"executableLineCount": 2,
|
|
"nextProgramLine": 17
|
|
},
|
|
"ui": {
|
|
"taskState": "on",
|
|
"taskMode": "auto",
|
|
"interpState": "reading",
|
|
"execState": "waiting_for_motion",
|
|
"taskCycle": 0,
|
|
"servoCycle": 4080,
|
|
"motionQueueDepth": 0,
|
|
"halChangedPinCount": 0,
|
|
"activeLine": 17,
|
|
"motionProgramLine": 17,
|
|
"halProgramLine": 17,
|
|
"activeLineSource": "motion-status",
|
|
"activeLineHalSynced": true,
|
|
"switchkinsType": 0,
|
|
"axisPose": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 8.21554,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"axisPoseFrame": "work",
|
|
"currentVelocity": 1000.002
|
|
},
|
|
"feedback": {
|
|
"apiName": "web-rtcp-5axis-program-runtime-feedback",
|
|
"sourceMode": "linuxcnc-task-motion-hal-wasm",
|
|
"semanticBoundary": "linuxcnc_task_motion_hal_wasm_simulation_runtime",
|
|
"sampleIndex": 1,
|
|
"motionIndex": 1,
|
|
"line": 18,
|
|
"motionProgramLine": 17,
|
|
"halProgramLine": 17,
|
|
"activeLineSource": "motion-status",
|
|
"activeLineHalSynced": true,
|
|
"type": "TASK_MOTION",
|
|
"timeSeconds": 0,
|
|
"axisPose": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 8.21554,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"currentVelocityMmPerMin": 1000.002,
|
|
"requestedVelocityMmPerMin": 1000.002,
|
|
"distanceToGo": 0,
|
|
"dtg": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 0
|
|
},
|
|
"queueDepth": 0,
|
|
"activeDepth": 0,
|
|
"cycle": 4080,
|
|
"taskCycle": 408,
|
|
"halChangedPinCount": 0,
|
|
"sourceFile": "xyzbc_switchkins_sub.ngc",
|
|
"statement": "g0 x+20 y+20 z#<zmax>",
|
|
"motionType": "rapid",
|
|
"activeKinematics": "identity",
|
|
"tcp": {
|
|
"x": -1.9922131614460816,
|
|
"y": 1.9922131614460812,
|
|
"z": 7.740783742207376
|
|
},
|
|
"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
|
|
}
|
|
}
|
|
},
|
|
"programUiExecution": {
|
|
"apiName": "web-rtcp-5axis-ui-gcode-live-execution",
|
|
"status": "running",
|
|
"source": "programAxisPreviewPath.samples",
|
|
"samplePeriodMs": 50,
|
|
"sampleIndex": 1,
|
|
"sampleCount": 1300,
|
|
"executedSampleCount": 2,
|
|
"timeMs": 50,
|
|
"activeProgram": "configs/sim/axis/vismach/5axis/table-rotary-tilting/demos/xyzbc_switchkins.ngc",
|
|
"sourceFile": "xyzbc_switchkins_sub.ngc",
|
|
"line": 18,
|
|
"statement": "g0 x+20 y+20 z#<zmax>",
|
|
"operation": "rapid-to-quadrant-center",
|
|
"executionIndex": 4,
|
|
"gcodeStepIndex": 18,
|
|
"segmentIndex": 1,
|
|
"motionType": "rapid",
|
|
"activeKinematics": "identity",
|
|
"joint": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 8.21554,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"tcp": {
|
|
"x": -1.9922131614460816,
|
|
"y": 1.9922131614460812,
|
|
"z": 7.740783742207376
|
|
},
|
|
"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"
|
|
},
|
|
"axisPose": {
|
|
"x": -1.9868853213249469,
|
|
"y": 1.9868853213249464,
|
|
"z": 7.720082313771463,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"tcpPose": {
|
|
"x": -1.9868853213249469,
|
|
"y": 1.9868853213249464,
|
|
"z": 7.720082313771463,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"toolAxisVector": {
|
|
"x": 0.24184476264797528,
|
|
"y": 0.24184476264797522,
|
|
"z": 0.9396926207859084
|
|
},
|
|
"canvas": {
|
|
"toolhead": "{\"x\":-0.002,\"y\":0.002,\"z\":0.008}",
|
|
"tcpPose": "{\"x\":-1.987,\"y\":1.987,\"z\":7.72,\"a\":0,\"b\":20,\"c\":45}",
|
|
"toolAxis": "{\"x\":0.242,\"y\":0.242,\"z\":0.94}",
|
|
"executedPathPoints": "0",
|
|
"pathPoints": "1300"
|
|
},
|
|
"frame": "frame-0025.png",
|
|
"captureStartedMs": 1783110132232,
|
|
"captureDurationMs": 118,
|
|
"intervalSincePreviousMs": 145
|
|
},
|
|
{
|
|
"wallClock": "2026-07-03T20:22:12.355Z",
|
|
"perfNow": 4946.800000000745,
|
|
"runState": "running",
|
|
"mode": "auto",
|
|
"interpState": "reading",
|
|
"activeLine": 18,
|
|
"programElapsedSeconds": 0.356,
|
|
"programRemainingSeconds": 61.10500000000001,
|
|
"motionIndex": 1,
|
|
"sampleIndex": 1,
|
|
"programSourceMode": "linuxcnc-machine-file-remap-wasm",
|
|
"executionSourceMode": "linuxcnc-task-motion-hal-wasm",
|
|
"motionCount": 29,
|
|
"message": "task/HAL status tick 83",
|
|
"task": {
|
|
"state": "ON",
|
|
"mode": "AUTO",
|
|
"interpState": "READING",
|
|
"execState": "WAITING_FOR_MOTION",
|
|
"taskPaused": false,
|
|
"singleStepping": false,
|
|
"cycle": 423,
|
|
"openProgram": "/work/sim/axis/vismach/5axis/table-rotary-tilting/xyzbc-trt/demos/xyzbc_switchkins.ngc",
|
|
"openedLineCount": 3,
|
|
"openedSourceLineCount": 44,
|
|
"executableLineCount": 2,
|
|
"nextProgramLine": 17
|
|
},
|
|
"ui": {
|
|
"taskState": "on",
|
|
"taskMode": "auto",
|
|
"interpState": "reading",
|
|
"execState": "waiting_for_motion",
|
|
"taskCycle": 0,
|
|
"servoCycle": 4230,
|
|
"motionQueueDepth": 0,
|
|
"halChangedPinCount": 0,
|
|
"activeLine": 17,
|
|
"motionProgramLine": 17,
|
|
"halProgramLine": 17,
|
|
"activeLineSource": "motion-status",
|
|
"activeLineHalSynced": true,
|
|
"switchkinsType": 0,
|
|
"axisPose": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 8.14945,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"axisPoseFrame": "work",
|
|
"currentVelocity": 1000.002
|
|
},
|
|
"feedback": {
|
|
"apiName": "web-rtcp-5axis-program-runtime-feedback",
|
|
"sourceMode": "linuxcnc-task-motion-hal-wasm",
|
|
"semanticBoundary": "linuxcnc_task_motion_hal_wasm_simulation_runtime",
|
|
"sampleIndex": 1,
|
|
"motionIndex": 1,
|
|
"line": 18,
|
|
"motionProgramLine": 17,
|
|
"halProgramLine": 17,
|
|
"activeLineSource": "motion-status",
|
|
"activeLineHalSynced": true,
|
|
"type": "TASK_MOTION",
|
|
"timeSeconds": 0,
|
|
"axisPose": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 8.14945,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"currentVelocityMmPerMin": 1000.002,
|
|
"requestedVelocityMmPerMin": 1000.002,
|
|
"distanceToGo": 0,
|
|
"dtg": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 0
|
|
},
|
|
"queueDepth": 0,
|
|
"activeDepth": 0,
|
|
"cycle": 4230,
|
|
"taskCycle": 423,
|
|
"halChangedPinCount": 0,
|
|
"sourceFile": "xyzbc_switchkins_sub.ngc",
|
|
"statement": "g0 x+20 y+20 z#<zmax>",
|
|
"motionType": "rapid",
|
|
"activeKinematics": "identity",
|
|
"tcp": {
|
|
"x": -1.9762296410826772,
|
|
"y": 1.9762296410826767,
|
|
"z": 7.678679456899635
|
|
},
|
|
"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
|
|
}
|
|
}
|
|
},
|
|
"programUiExecution": {
|
|
"apiName": "web-rtcp-5axis-ui-gcode-live-execution",
|
|
"status": "running",
|
|
"source": "programAxisPreviewPath.samples",
|
|
"samplePeriodMs": 50,
|
|
"sampleIndex": 1,
|
|
"sampleCount": 1300,
|
|
"executedSampleCount": 2,
|
|
"timeMs": 50,
|
|
"activeProgram": "configs/sim/axis/vismach/5axis/table-rotary-tilting/demos/xyzbc_switchkins.ngc",
|
|
"sourceFile": "xyzbc_switchkins_sub.ngc",
|
|
"line": 18,
|
|
"statement": "g0 x+20 y+20 z#<zmax>",
|
|
"operation": "rapid-to-quadrant-center",
|
|
"executionIndex": 4,
|
|
"gcodeStepIndex": 18,
|
|
"segmentIndex": 1,
|
|
"motionType": "rapid",
|
|
"activeKinematics": "identity",
|
|
"joint": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 8.14945,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"tcp": {
|
|
"x": -1.9762296410826772,
|
|
"y": 1.9762296410826767,
|
|
"z": 7.678679456899635
|
|
},
|
|
"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"
|
|
},
|
|
"axisPose": {
|
|
"x": -1.970901800961542,
|
|
"y": 1.9709018009615416,
|
|
"z": 7.657978028463721,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"tcpPose": {
|
|
"x": -1.970901800961542,
|
|
"y": 1.9709018009615416,
|
|
"z": 7.657978028463721,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"toolAxisVector": {
|
|
"x": 0.24184476264797528,
|
|
"y": 0.24184476264797522,
|
|
"z": 0.9396926207859084
|
|
},
|
|
"canvas": {
|
|
"toolhead": "{\"x\":-0.002,\"y\":0.002,\"z\":0.008}",
|
|
"tcpPose": "{\"x\":-1.971,\"y\":1.971,\"z\":7.658,\"a\":0,\"b\":20,\"c\":45}",
|
|
"toolAxis": "{\"x\":0.242,\"y\":0.242,\"z\":0.94}",
|
|
"executedPathPoints": "0",
|
|
"pathPoints": "1300"
|
|
},
|
|
"frame": "frame-0026.png",
|
|
"captureStartedMs": 1783110132350,
|
|
"captureDurationMs": 146,
|
|
"intervalSincePreviousMs": 118
|
|
},
|
|
{
|
|
"wallClock": "2026-07-03T20:22:12.521Z",
|
|
"perfNow": 5112.800000000745,
|
|
"runState": "running",
|
|
"mode": "auto",
|
|
"interpState": "reading",
|
|
"activeLine": 18,
|
|
"programElapsedSeconds": 0.356,
|
|
"programRemainingSeconds": 61.10500000000001,
|
|
"motionIndex": 1,
|
|
"sampleIndex": 1,
|
|
"programSourceMode": "linuxcnc-machine-file-remap-wasm",
|
|
"executionSourceMode": "linuxcnc-task-motion-hal-wasm",
|
|
"motionCount": 29,
|
|
"message": "task/HAL status tick 87",
|
|
"task": {
|
|
"state": "ON",
|
|
"mode": "AUTO",
|
|
"interpState": "READING",
|
|
"execState": "WAITING_FOR_MOTION",
|
|
"taskPaused": false,
|
|
"singleStepping": false,
|
|
"cycle": 443,
|
|
"openProgram": "/work/sim/axis/vismach/5axis/table-rotary-tilting/xyzbc-trt/demos/xyzbc_switchkins.ngc",
|
|
"openedLineCount": 3,
|
|
"openedSourceLineCount": 44,
|
|
"executableLineCount": 2,
|
|
"nextProgramLine": 17
|
|
},
|
|
"ui": {
|
|
"taskState": "on",
|
|
"taskMode": "auto",
|
|
"interpState": "reading",
|
|
"execState": "waiting_for_motion",
|
|
"taskCycle": 0,
|
|
"servoCycle": 4430,
|
|
"motionQueueDepth": 0,
|
|
"halChangedPinCount": 0,
|
|
"activeLine": 17,
|
|
"motionProgramLine": 17,
|
|
"halProgramLine": 17,
|
|
"activeLineSource": "motion-status",
|
|
"activeLineHalSynced": true,
|
|
"switchkinsType": 0,
|
|
"axisPose": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 8.06133,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"axisPoseFrame": "work",
|
|
"currentVelocity": 1000.002
|
|
},
|
|
"feedback": {
|
|
"apiName": "web-rtcp-5axis-program-runtime-feedback",
|
|
"sourceMode": "linuxcnc-task-motion-hal-wasm",
|
|
"semanticBoundary": "linuxcnc_task_motion_hal_wasm_simulation_runtime",
|
|
"sampleIndex": 1,
|
|
"motionIndex": 1,
|
|
"line": 18,
|
|
"motionProgramLine": 17,
|
|
"halProgramLine": 17,
|
|
"activeLineSource": "motion-status",
|
|
"activeLineHalSynced": true,
|
|
"type": "TASK_MOTION",
|
|
"timeSeconds": 0,
|
|
"axisPose": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 8.06133,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"currentVelocityMmPerMin": 1000.002,
|
|
"requestedVelocityMmPerMin": 1000.002,
|
|
"distanceToGo": 0,
|
|
"dtg": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 0
|
|
},
|
|
"queueDepth": 0,
|
|
"activeDepth": 0,
|
|
"cycle": 4430,
|
|
"taskCycle": 443,
|
|
"halChangedPinCount": 0,
|
|
"sourceFile": "xyzbc_switchkins_sub.ngc",
|
|
"statement": "g0 x+20 y+20 z#<zmax>",
|
|
"motionType": "rapid",
|
|
"activeKinematics": "identity",
|
|
"tcp": {
|
|
"x": -1.9549182805981375,
|
|
"y": 1.954918280598137,
|
|
"z": 7.595873743155981
|
|
},
|
|
"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
|
|
}
|
|
}
|
|
},
|
|
"programUiExecution": {
|
|
"apiName": "web-rtcp-5axis-ui-gcode-live-execution",
|
|
"status": "running",
|
|
"source": "programAxisPreviewPath.samples",
|
|
"samplePeriodMs": 50,
|
|
"sampleIndex": 1,
|
|
"sampleCount": 1300,
|
|
"executedSampleCount": 2,
|
|
"timeMs": 50,
|
|
"activeProgram": "configs/sim/axis/vismach/5axis/table-rotary-tilting/demos/xyzbc_switchkins.ngc",
|
|
"sourceFile": "xyzbc_switchkins_sub.ngc",
|
|
"line": 18,
|
|
"statement": "g0 x+20 y+20 z#<zmax>",
|
|
"operation": "rapid-to-quadrant-center",
|
|
"executionIndex": 4,
|
|
"gcodeStepIndex": 18,
|
|
"segmentIndex": 1,
|
|
"motionType": "rapid",
|
|
"activeKinematics": "identity",
|
|
"joint": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 8.06133,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"tcp": {
|
|
"x": -1.9549182805981375,
|
|
"y": 1.954918280598137,
|
|
"z": 7.595873743155981
|
|
},
|
|
"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"
|
|
},
|
|
"axisPose": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 8.06133,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"tcpPose": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 8.06133,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"toolAxisVector": {
|
|
"x": 0.24184476264797528,
|
|
"y": 0.24184476264797522,
|
|
"z": 0.9396926207859084
|
|
},
|
|
"canvas": {
|
|
"toolhead": "{\"x\":-0.002,\"y\":0.002,\"z\":0.008}",
|
|
"tcpPose": "{\"x\":0,\"y\":0,\"z\":8.061,\"a\":0,\"b\":20,\"c\":45}",
|
|
"toolAxis": "{\"x\":0.242,\"y\":0.242,\"z\":0.94}",
|
|
"executedPathPoints": "0",
|
|
"pathPoints": "1300"
|
|
},
|
|
"frame": "frame-0027.png",
|
|
"captureStartedMs": 1783110132496,
|
|
"captureDurationMs": 153,
|
|
"intervalSincePreviousMs": 146
|
|
},
|
|
{
|
|
"wallClock": "2026-07-03T20:22:12.665Z",
|
|
"perfNow": 5257.20000000298,
|
|
"runState": "running",
|
|
"mode": "auto",
|
|
"interpState": "reading",
|
|
"activeLine": 18,
|
|
"programElapsedSeconds": 0.356,
|
|
"programRemainingSeconds": 61.10500000000001,
|
|
"motionIndex": 1,
|
|
"sampleIndex": 1,
|
|
"programSourceMode": "linuxcnc-machine-file-remap-wasm",
|
|
"executionSourceMode": "linuxcnc-task-motion-hal-wasm",
|
|
"motionCount": 29,
|
|
"message": "task/HAL status tick 91",
|
|
"task": {
|
|
"state": "ON",
|
|
"mode": "AUTO",
|
|
"interpState": "READING",
|
|
"execState": "WAITING_FOR_MOTION",
|
|
"taskPaused": false,
|
|
"singleStepping": false,
|
|
"cycle": 463,
|
|
"openProgram": "/work/sim/axis/vismach/5axis/table-rotary-tilting/xyzbc-trt/demos/xyzbc_switchkins.ngc",
|
|
"openedLineCount": 3,
|
|
"openedSourceLineCount": 44,
|
|
"executableLineCount": 2,
|
|
"nextProgramLine": 17
|
|
},
|
|
"ui": {
|
|
"taskState": "on",
|
|
"taskMode": "auto",
|
|
"interpState": "reading",
|
|
"execState": "waiting_for_motion",
|
|
"taskCycle": 0,
|
|
"servoCycle": 4630,
|
|
"motionQueueDepth": 0,
|
|
"halChangedPinCount": 0,
|
|
"activeLine": 17,
|
|
"motionProgramLine": 17,
|
|
"halProgramLine": 17,
|
|
"activeLineSource": "motion-status",
|
|
"activeLineHalSynced": true,
|
|
"switchkinsType": 0,
|
|
"axisPose": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 7.97321,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"axisPoseFrame": "work",
|
|
"currentVelocity": 1000.002
|
|
},
|
|
"feedback": {
|
|
"apiName": "web-rtcp-5axis-program-runtime-feedback",
|
|
"sourceMode": "linuxcnc-task-motion-hal-wasm",
|
|
"semanticBoundary": "linuxcnc_task_motion_hal_wasm_simulation_runtime",
|
|
"sampleIndex": 1,
|
|
"motionIndex": 1,
|
|
"line": 18,
|
|
"motionProgramLine": 17,
|
|
"halProgramLine": 17,
|
|
"activeLineSource": "motion-status",
|
|
"activeLineHalSynced": true,
|
|
"type": "TASK_MOTION",
|
|
"timeSeconds": 0,
|
|
"axisPose": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 7.97321,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"currentVelocityMmPerMin": 1000.002,
|
|
"requestedVelocityMmPerMin": 1000.002,
|
|
"distanceToGo": 0,
|
|
"dtg": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 0
|
|
},
|
|
"queueDepth": 0,
|
|
"activeDepth": 0,
|
|
"cycle": 4630,
|
|
"taskCycle": 463,
|
|
"halChangedPinCount": 0,
|
|
"sourceFile": "xyzbc_switchkins_sub.ngc",
|
|
"statement": "g0 x+20 y+20 z#<zmax>",
|
|
"motionType": "rapid",
|
|
"activeKinematics": "identity",
|
|
"tcp": {
|
|
"x": -1.933606920113598,
|
|
"y": 1.9336069201135975,
|
|
"z": 7.513068029412326
|
|
},
|
|
"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
|
|
}
|
|
}
|
|
},
|
|
"programUiExecution": {
|
|
"apiName": "web-rtcp-5axis-ui-gcode-live-execution",
|
|
"status": "running",
|
|
"source": "programAxisPreviewPath.samples",
|
|
"samplePeriodMs": 50,
|
|
"sampleIndex": 1,
|
|
"sampleCount": 1300,
|
|
"executedSampleCount": 2,
|
|
"timeMs": 50,
|
|
"activeProgram": "configs/sim/axis/vismach/5axis/table-rotary-tilting/demos/xyzbc_switchkins.ngc",
|
|
"sourceFile": "xyzbc_switchkins_sub.ngc",
|
|
"line": 18,
|
|
"statement": "g0 x+20 y+20 z#<zmax>",
|
|
"operation": "rapid-to-quadrant-center",
|
|
"executionIndex": 4,
|
|
"gcodeStepIndex": 18,
|
|
"segmentIndex": 1,
|
|
"motionType": "rapid",
|
|
"activeKinematics": "identity",
|
|
"joint": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 7.97321,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"tcp": {
|
|
"x": -1.933606920113598,
|
|
"y": 1.9336069201135975,
|
|
"z": 7.513068029412326
|
|
},
|
|
"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"
|
|
},
|
|
"axisPose": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 7.97321,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"tcpPose": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 7.97321,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"toolAxisVector": {
|
|
"x": 0.24184476264797528,
|
|
"y": 0.24184476264797522,
|
|
"z": 0.9396926207859084
|
|
},
|
|
"canvas": {
|
|
"toolhead": "{\"x\":-0.002,\"y\":0.002,\"z\":0.008}",
|
|
"tcpPose": "{\"x\":0,\"y\":0,\"z\":7.973,\"a\":0,\"b\":20,\"c\":45}",
|
|
"toolAxis": "{\"x\":0.242,\"y\":0.242,\"z\":0.94}",
|
|
"executedPathPoints": "0",
|
|
"pathPoints": "1300"
|
|
},
|
|
"frame": "frame-0028.png",
|
|
"captureStartedMs": 1783110132649,
|
|
"captureDurationMs": 167,
|
|
"intervalSincePreviousMs": 153
|
|
},
|
|
{
|
|
"wallClock": "2026-07-03T20:22:12.824Z",
|
|
"perfNow": 5416.300000000745,
|
|
"runState": "running",
|
|
"mode": "auto",
|
|
"interpState": "reading",
|
|
"activeLine": 18,
|
|
"programElapsedSeconds": 0.356,
|
|
"programRemainingSeconds": 61.10500000000001,
|
|
"motionIndex": 1,
|
|
"sampleIndex": 1,
|
|
"programSourceMode": "linuxcnc-machine-file-remap-wasm",
|
|
"executionSourceMode": "linuxcnc-task-motion-hal-wasm",
|
|
"motionCount": 29,
|
|
"message": "task/HAL status tick 95",
|
|
"task": {
|
|
"state": "ON",
|
|
"mode": "AUTO",
|
|
"interpState": "READING",
|
|
"execState": "WAITING_FOR_MOTION",
|
|
"taskPaused": false,
|
|
"singleStepping": false,
|
|
"cycle": 483,
|
|
"openProgram": "/work/sim/axis/vismach/5axis/table-rotary-tilting/xyzbc-trt/demos/xyzbc_switchkins.ngc",
|
|
"openedLineCount": 3,
|
|
"openedSourceLineCount": 44,
|
|
"executableLineCount": 2,
|
|
"nextProgramLine": 17
|
|
},
|
|
"ui": {
|
|
"taskState": "on",
|
|
"taskMode": "auto",
|
|
"interpState": "reading",
|
|
"execState": "waiting_for_motion",
|
|
"taskCycle": 0,
|
|
"servoCycle": 4830,
|
|
"motionQueueDepth": 0,
|
|
"halChangedPinCount": 0,
|
|
"activeLine": 17,
|
|
"motionProgramLine": 17,
|
|
"halProgramLine": 17,
|
|
"activeLineSource": "motion-status",
|
|
"activeLineHalSynced": true,
|
|
"switchkinsType": 0,
|
|
"axisPose": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 7.88509,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"axisPoseFrame": "work",
|
|
"currentVelocity": 1000.002
|
|
},
|
|
"feedback": {
|
|
"apiName": "web-rtcp-5axis-program-runtime-feedback",
|
|
"sourceMode": "linuxcnc-task-motion-hal-wasm",
|
|
"semanticBoundary": "linuxcnc_task_motion_hal_wasm_simulation_runtime",
|
|
"sampleIndex": 1,
|
|
"motionIndex": 1,
|
|
"line": 18,
|
|
"motionProgramLine": 17,
|
|
"halProgramLine": 17,
|
|
"activeLineSource": "motion-status",
|
|
"activeLineHalSynced": true,
|
|
"type": "TASK_MOTION",
|
|
"timeSeconds": 0,
|
|
"axisPose": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 7.88509,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"currentVelocityMmPerMin": 1000.002,
|
|
"requestedVelocityMmPerMin": 1000.002,
|
|
"distanceToGo": 0,
|
|
"dtg": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 0
|
|
},
|
|
"queueDepth": 0,
|
|
"activeDepth": 0,
|
|
"cycle": 4830,
|
|
"taskCycle": 483,
|
|
"halChangedPinCount": 0,
|
|
"sourceFile": "xyzbc_switchkins_sub.ngc",
|
|
"statement": "g0 x+20 y+20 z#<zmax>",
|
|
"motionType": "rapid",
|
|
"activeKinematics": "identity",
|
|
"tcp": {
|
|
"x": -1.9122955596290583,
|
|
"y": 1.9122955596290578,
|
|
"z": 7.4302623156686725
|
|
},
|
|
"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
|
|
}
|
|
}
|
|
},
|
|
"programUiExecution": {
|
|
"apiName": "web-rtcp-5axis-ui-gcode-live-execution",
|
|
"status": "running",
|
|
"source": "programAxisPreviewPath.samples",
|
|
"samplePeriodMs": 50,
|
|
"sampleIndex": 1,
|
|
"sampleCount": 1300,
|
|
"executedSampleCount": 2,
|
|
"timeMs": 50,
|
|
"activeProgram": "configs/sim/axis/vismach/5axis/table-rotary-tilting/demos/xyzbc_switchkins.ngc",
|
|
"sourceFile": "xyzbc_switchkins_sub.ngc",
|
|
"line": 18,
|
|
"statement": "g0 x+20 y+20 z#<zmax>",
|
|
"operation": "rapid-to-quadrant-center",
|
|
"executionIndex": 4,
|
|
"gcodeStepIndex": 18,
|
|
"segmentIndex": 1,
|
|
"motionType": "rapid",
|
|
"activeKinematics": "identity",
|
|
"joint": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 7.88509,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"tcp": {
|
|
"x": -1.9122955596290583,
|
|
"y": 1.9122955596290578,
|
|
"z": 7.4302623156686725
|
|
},
|
|
"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"
|
|
},
|
|
"axisPose": {
|
|
"x": -1.9069677195079233,
|
|
"y": 1.9069677195079229,
|
|
"z": 7.409560887232758,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"tcpPose": {
|
|
"x": -1.9069677195079233,
|
|
"y": 1.9069677195079229,
|
|
"z": 7.409560887232758,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"toolAxisVector": {
|
|
"x": 0.24184476264797528,
|
|
"y": 0.24184476264797522,
|
|
"z": 0.9396926207859084
|
|
},
|
|
"canvas": {
|
|
"toolhead": "{\"x\":-0.002,\"y\":0.002,\"z\":0.007}",
|
|
"tcpPose": "{\"x\":-1.907,\"y\":1.907,\"z\":7.41,\"a\":0,\"b\":20,\"c\":45}",
|
|
"toolAxis": "{\"x\":0.242,\"y\":0.242,\"z\":0.94}",
|
|
"executedPathPoints": "0",
|
|
"pathPoints": "1300"
|
|
},
|
|
"frame": "frame-0029.png",
|
|
"captureStartedMs": 1783110132816,
|
|
"captureDurationMs": 111,
|
|
"intervalSincePreviousMs": 167
|
|
},
|
|
{
|
|
"wallClock": "2026-07-03T20:22:12.934Z",
|
|
"perfNow": 5525.800000000745,
|
|
"runState": "running",
|
|
"mode": "auto",
|
|
"interpState": "reading",
|
|
"activeLine": 18,
|
|
"programElapsedSeconds": 0.356,
|
|
"programRemainingSeconds": 61.10500000000001,
|
|
"motionIndex": 1,
|
|
"sampleIndex": 1,
|
|
"programSourceMode": "linuxcnc-machine-file-remap-wasm",
|
|
"executionSourceMode": "linuxcnc-task-motion-hal-wasm",
|
|
"motionCount": 29,
|
|
"message": "task/HAL status tick 98",
|
|
"task": {
|
|
"state": "ON",
|
|
"mode": "AUTO",
|
|
"interpState": "READING",
|
|
"execState": "WAITING_FOR_MOTION",
|
|
"taskPaused": false,
|
|
"singleStepping": false,
|
|
"cycle": 498,
|
|
"openProgram": "/work/sim/axis/vismach/5axis/table-rotary-tilting/xyzbc-trt/demos/xyzbc_switchkins.ngc",
|
|
"openedLineCount": 3,
|
|
"openedSourceLineCount": 44,
|
|
"executableLineCount": 2,
|
|
"nextProgramLine": 17
|
|
},
|
|
"ui": {
|
|
"taskState": "on",
|
|
"taskMode": "auto",
|
|
"interpState": "reading",
|
|
"execState": "waiting_for_motion",
|
|
"taskCycle": 0,
|
|
"servoCycle": 4980,
|
|
"motionQueueDepth": 0,
|
|
"halChangedPinCount": 0,
|
|
"activeLine": 17,
|
|
"motionProgramLine": 17,
|
|
"halProgramLine": 17,
|
|
"activeLineSource": "motion-status",
|
|
"activeLineHalSynced": true,
|
|
"switchkinsType": 0,
|
|
"axisPose": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 7.819,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"axisPoseFrame": "work",
|
|
"currentVelocity": 1000.002
|
|
},
|
|
"feedback": {
|
|
"apiName": "web-rtcp-5axis-program-runtime-feedback",
|
|
"sourceMode": "linuxcnc-task-motion-hal-wasm",
|
|
"semanticBoundary": "linuxcnc_task_motion_hal_wasm_simulation_runtime",
|
|
"sampleIndex": 1,
|
|
"motionIndex": 1,
|
|
"line": 18,
|
|
"motionProgramLine": 17,
|
|
"halProgramLine": 17,
|
|
"activeLineSource": "motion-status",
|
|
"activeLineHalSynced": true,
|
|
"type": "TASK_MOTION",
|
|
"timeSeconds": 0,
|
|
"axisPose": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 7.819,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"currentVelocityMmPerMin": 1000.002,
|
|
"requestedVelocityMmPerMin": 1000.002,
|
|
"distanceToGo": 0,
|
|
"dtg": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 0
|
|
},
|
|
"queueDepth": 0,
|
|
"activeDepth": 0,
|
|
"cycle": 4980,
|
|
"taskCycle": 498,
|
|
"halChangedPinCount": 0,
|
|
"sourceFile": "xyzbc_switchkins_sub.ngc",
|
|
"statement": "g0 x+20 y+20 z#<zmax>",
|
|
"motionType": "rapid",
|
|
"activeKinematics": "identity",
|
|
"tcp": {
|
|
"x": -1.8963120392656536,
|
|
"y": 1.8963120392656532,
|
|
"z": 7.368158030360932
|
|
},
|
|
"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
|
|
}
|
|
}
|
|
},
|
|
"programUiExecution": {
|
|
"apiName": "web-rtcp-5axis-ui-gcode-live-execution",
|
|
"status": "running",
|
|
"source": "programAxisPreviewPath.samples",
|
|
"samplePeriodMs": 50,
|
|
"sampleIndex": 1,
|
|
"sampleCount": 1300,
|
|
"executedSampleCount": 2,
|
|
"timeMs": 50,
|
|
"activeProgram": "configs/sim/axis/vismach/5axis/table-rotary-tilting/demos/xyzbc_switchkins.ngc",
|
|
"sourceFile": "xyzbc_switchkins_sub.ngc",
|
|
"line": 18,
|
|
"statement": "g0 x+20 y+20 z#<zmax>",
|
|
"operation": "rapid-to-quadrant-center",
|
|
"executionIndex": 4,
|
|
"gcodeStepIndex": 18,
|
|
"segmentIndex": 1,
|
|
"motionType": "rapid",
|
|
"activeKinematics": "identity",
|
|
"joint": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 7.819,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"tcp": {
|
|
"x": -1.8963120392656536,
|
|
"y": 1.8963120392656532,
|
|
"z": 7.368158030360932
|
|
},
|
|
"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"
|
|
},
|
|
"axisPose": {
|
|
"x": -1.8909841991445187,
|
|
"y": 1.8909841991445182,
|
|
"z": 7.347456601925018,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"tcpPose": {
|
|
"x": -1.8909841991445187,
|
|
"y": 1.8909841991445182,
|
|
"z": 7.347456601925018,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"toolAxisVector": {
|
|
"x": 0.24184476264797528,
|
|
"y": 0.24184476264797522,
|
|
"z": 0.9396926207859084
|
|
},
|
|
"canvas": {
|
|
"toolhead": "{\"x\":-0.002,\"y\":0.002,\"z\":0.007}",
|
|
"tcpPose": "{\"x\":-1.891,\"y\":1.891,\"z\":7.347,\"a\":0,\"b\":20,\"c\":45}",
|
|
"toolAxis": "{\"x\":0.242,\"y\":0.242,\"z\":0.94}",
|
|
"executedPathPoints": "0",
|
|
"pathPoints": "1300"
|
|
},
|
|
"frame": "frame-0030.png",
|
|
"captureStartedMs": 1783110132927,
|
|
"captureDurationMs": 122,
|
|
"intervalSincePreviousMs": 111
|
|
},
|
|
{
|
|
"wallClock": "2026-07-03T20:22:13.053Z",
|
|
"perfNow": 5645.400000002235,
|
|
"runState": "running",
|
|
"mode": "auto",
|
|
"interpState": "reading",
|
|
"activeLine": 18,
|
|
"programElapsedSeconds": 0.356,
|
|
"programRemainingSeconds": 61.10500000000001,
|
|
"motionIndex": 1,
|
|
"sampleIndex": 1,
|
|
"programSourceMode": "linuxcnc-machine-file-remap-wasm",
|
|
"executionSourceMode": "linuxcnc-task-motion-hal-wasm",
|
|
"motionCount": 29,
|
|
"message": "task/HAL status tick 101",
|
|
"task": {
|
|
"state": "ON",
|
|
"mode": "AUTO",
|
|
"interpState": "READING",
|
|
"execState": "WAITING_FOR_MOTION",
|
|
"taskPaused": false,
|
|
"singleStepping": false,
|
|
"cycle": 513,
|
|
"openProgram": "/work/sim/axis/vismach/5axis/table-rotary-tilting/xyzbc-trt/demos/xyzbc_switchkins.ngc",
|
|
"openedLineCount": 3,
|
|
"openedSourceLineCount": 44,
|
|
"executableLineCount": 2,
|
|
"nextProgramLine": 17
|
|
},
|
|
"ui": {
|
|
"taskState": "on",
|
|
"taskMode": "auto",
|
|
"interpState": "reading",
|
|
"execState": "waiting_for_motion",
|
|
"taskCycle": 0,
|
|
"servoCycle": 5130,
|
|
"motionQueueDepth": 0,
|
|
"halChangedPinCount": 0,
|
|
"activeLine": 17,
|
|
"motionProgramLine": 17,
|
|
"halProgramLine": 17,
|
|
"activeLineSource": "motion-status",
|
|
"activeLineHalSynced": true,
|
|
"switchkinsType": 0,
|
|
"axisPose": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 7.75291,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"axisPoseFrame": "work",
|
|
"currentVelocity": 1000.002
|
|
},
|
|
"feedback": {
|
|
"apiName": "web-rtcp-5axis-program-runtime-feedback",
|
|
"sourceMode": "linuxcnc-task-motion-hal-wasm",
|
|
"semanticBoundary": "linuxcnc_task_motion_hal_wasm_simulation_runtime",
|
|
"sampleIndex": 1,
|
|
"motionIndex": 1,
|
|
"line": 18,
|
|
"motionProgramLine": 17,
|
|
"halProgramLine": 17,
|
|
"activeLineSource": "motion-status",
|
|
"activeLineHalSynced": true,
|
|
"type": "TASK_MOTION",
|
|
"timeSeconds": 0,
|
|
"axisPose": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 7.75291,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"currentVelocityMmPerMin": 1000.002,
|
|
"requestedVelocityMmPerMin": 1000.002,
|
|
"distanceToGo": 0,
|
|
"dtg": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 0
|
|
},
|
|
"queueDepth": 0,
|
|
"activeDepth": 0,
|
|
"cycle": 5130,
|
|
"taskCycle": 513,
|
|
"halChangedPinCount": 0,
|
|
"sourceFile": "xyzbc_switchkins_sub.ngc",
|
|
"statement": "g0 x+20 y+20 z#<zmax>",
|
|
"motionType": "rapid",
|
|
"activeKinematics": "identity",
|
|
"tcp": {
|
|
"x": -1.880328518902249,
|
|
"y": 1.8803285189022485,
|
|
"z": 7.306053745053191
|
|
},
|
|
"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
|
|
}
|
|
}
|
|
},
|
|
"programUiExecution": {
|
|
"apiName": "web-rtcp-5axis-ui-gcode-live-execution",
|
|
"status": "running",
|
|
"source": "programAxisPreviewPath.samples",
|
|
"samplePeriodMs": 50,
|
|
"sampleIndex": 1,
|
|
"sampleCount": 1300,
|
|
"executedSampleCount": 2,
|
|
"timeMs": 50,
|
|
"activeProgram": "configs/sim/axis/vismach/5axis/table-rotary-tilting/demos/xyzbc_switchkins.ngc",
|
|
"sourceFile": "xyzbc_switchkins_sub.ngc",
|
|
"line": 18,
|
|
"statement": "g0 x+20 y+20 z#<zmax>",
|
|
"operation": "rapid-to-quadrant-center",
|
|
"executionIndex": 4,
|
|
"gcodeStepIndex": 18,
|
|
"segmentIndex": 1,
|
|
"motionType": "rapid",
|
|
"activeKinematics": "identity",
|
|
"joint": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 7.75291,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"tcp": {
|
|
"x": -1.880328518902249,
|
|
"y": 1.8803285189022485,
|
|
"z": 7.306053745053191
|
|
},
|
|
"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"
|
|
},
|
|
"axisPose": {
|
|
"x": -1.875000678781114,
|
|
"y": 1.8750006787811135,
|
|
"z": 7.285352316617277,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"tcpPose": {
|
|
"x": -1.875000678781114,
|
|
"y": 1.8750006787811135,
|
|
"z": 7.285352316617277,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"toolAxisVector": {
|
|
"x": 0.24184476264797528,
|
|
"y": 0.24184476264797522,
|
|
"z": 0.9396926207859084
|
|
},
|
|
"canvas": {
|
|
"toolhead": "{\"x\":-0.002,\"y\":0.002,\"z\":0.007}",
|
|
"tcpPose": "{\"x\":-1.875,\"y\":1.875,\"z\":7.285,\"a\":0,\"b\":20,\"c\":45}",
|
|
"toolAxis": "{\"x\":0.242,\"y\":0.242,\"z\":0.94}",
|
|
"executedPathPoints": "0",
|
|
"pathPoints": "1300"
|
|
},
|
|
"frame": "frame-0031.png",
|
|
"captureStartedMs": 1783110133049,
|
|
"captureDurationMs": 134,
|
|
"intervalSincePreviousMs": 122
|
|
},
|
|
{
|
|
"wallClock": "2026-07-03T20:22:13.194Z",
|
|
"perfNow": 5786.300000000745,
|
|
"runState": "running",
|
|
"mode": "auto",
|
|
"interpState": "reading",
|
|
"activeLine": 18,
|
|
"programElapsedSeconds": 0.356,
|
|
"programRemainingSeconds": 61.10500000000001,
|
|
"motionIndex": 1,
|
|
"sampleIndex": 1,
|
|
"programSourceMode": "linuxcnc-machine-file-remap-wasm",
|
|
"executionSourceMode": "linuxcnc-task-motion-hal-wasm",
|
|
"motionCount": 29,
|
|
"message": "task/HAL status tick 105",
|
|
"task": {
|
|
"state": "ON",
|
|
"mode": "AUTO",
|
|
"interpState": "READING",
|
|
"execState": "WAITING_FOR_MOTION",
|
|
"taskPaused": false,
|
|
"singleStepping": false,
|
|
"cycle": 533,
|
|
"openProgram": "/work/sim/axis/vismach/5axis/table-rotary-tilting/xyzbc-trt/demos/xyzbc_switchkins.ngc",
|
|
"openedLineCount": 3,
|
|
"openedSourceLineCount": 44,
|
|
"executableLineCount": 2,
|
|
"nextProgramLine": 17
|
|
},
|
|
"ui": {
|
|
"taskState": "on",
|
|
"taskMode": "auto",
|
|
"interpState": "reading",
|
|
"execState": "waiting_for_motion",
|
|
"taskCycle": 0,
|
|
"servoCycle": 5330,
|
|
"motionQueueDepth": 0,
|
|
"halChangedPinCount": 0,
|
|
"activeLine": 17,
|
|
"motionProgramLine": 17,
|
|
"halProgramLine": 17,
|
|
"activeLineSource": "motion-status",
|
|
"activeLineHalSynced": true,
|
|
"switchkinsType": 0,
|
|
"axisPose": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 7.66479,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"axisPoseFrame": "work",
|
|
"currentVelocity": 1000.002
|
|
},
|
|
"feedback": {
|
|
"apiName": "web-rtcp-5axis-program-runtime-feedback",
|
|
"sourceMode": "linuxcnc-task-motion-hal-wasm",
|
|
"semanticBoundary": "linuxcnc_task_motion_hal_wasm_simulation_runtime",
|
|
"sampleIndex": 1,
|
|
"motionIndex": 1,
|
|
"line": 18,
|
|
"motionProgramLine": 17,
|
|
"halProgramLine": 17,
|
|
"activeLineSource": "motion-status",
|
|
"activeLineHalSynced": true,
|
|
"type": "TASK_MOTION",
|
|
"timeSeconds": 0,
|
|
"axisPose": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 7.66479,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"currentVelocityMmPerMin": 1000.002,
|
|
"requestedVelocityMmPerMin": 1000.002,
|
|
"distanceToGo": 0,
|
|
"dtg": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 0
|
|
},
|
|
"queueDepth": 0,
|
|
"activeDepth": 0,
|
|
"cycle": 5330,
|
|
"taskCycle": 533,
|
|
"halChangedPinCount": 0,
|
|
"sourceFile": "xyzbc_switchkins_sub.ngc",
|
|
"statement": "g0 x+20 y+20 z#<zmax>",
|
|
"motionType": "rapid",
|
|
"activeKinematics": "identity",
|
|
"tcp": {
|
|
"x": -1.8590171584177093,
|
|
"y": 1.8590171584177089,
|
|
"z": 7.223248031309536
|
|
},
|
|
"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
|
|
}
|
|
}
|
|
},
|
|
"programUiExecution": {
|
|
"apiName": "web-rtcp-5axis-ui-gcode-live-execution",
|
|
"status": "running",
|
|
"source": "programAxisPreviewPath.samples",
|
|
"samplePeriodMs": 50,
|
|
"sampleIndex": 1,
|
|
"sampleCount": 1300,
|
|
"executedSampleCount": 2,
|
|
"timeMs": 50,
|
|
"activeProgram": "configs/sim/axis/vismach/5axis/table-rotary-tilting/demos/xyzbc_switchkins.ngc",
|
|
"sourceFile": "xyzbc_switchkins_sub.ngc",
|
|
"line": 18,
|
|
"statement": "g0 x+20 y+20 z#<zmax>",
|
|
"operation": "rapid-to-quadrant-center",
|
|
"executionIndex": 4,
|
|
"gcodeStepIndex": 18,
|
|
"segmentIndex": 1,
|
|
"motionType": "rapid",
|
|
"activeKinematics": "identity",
|
|
"joint": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 7.66479,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"tcp": {
|
|
"x": -1.8590171584177093,
|
|
"y": 1.8590171584177089,
|
|
"z": 7.223248031309536
|
|
},
|
|
"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"
|
|
},
|
|
"axisPose": {
|
|
"x": -1.8536893182965744,
|
|
"y": 1.853689318296574,
|
|
"z": 7.202546602873623,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"tcpPose": {
|
|
"x": -1.8536893182965744,
|
|
"y": 1.853689318296574,
|
|
"z": 7.202546602873623,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"toolAxisVector": {
|
|
"x": 0.24184476264797528,
|
|
"y": 0.24184476264797522,
|
|
"z": 0.9396926207859084
|
|
},
|
|
"canvas": {
|
|
"toolhead": "{\"x\":-0.002,\"y\":0.002,\"z\":0.007}",
|
|
"tcpPose": "{\"x\":-1.854,\"y\":1.854,\"z\":7.203,\"a\":0,\"b\":20,\"c\":45}",
|
|
"toolAxis": "{\"x\":0.242,\"y\":0.242,\"z\":0.94}",
|
|
"executedPathPoints": "0",
|
|
"pathPoints": "1300"
|
|
},
|
|
"frame": "frame-0032.png",
|
|
"captureStartedMs": 1783110133184,
|
|
"captureDurationMs": 116,
|
|
"intervalSincePreviousMs": 135
|
|
},
|
|
{
|
|
"wallClock": "2026-07-03T20:22:13.316Z",
|
|
"perfNow": 5908.60000000149,
|
|
"runState": "running",
|
|
"mode": "auto",
|
|
"interpState": "reading",
|
|
"activeLine": 18,
|
|
"programElapsedSeconds": 0.356,
|
|
"programRemainingSeconds": 61.10500000000001,
|
|
"motionIndex": 1,
|
|
"sampleIndex": 1,
|
|
"programSourceMode": "linuxcnc-machine-file-remap-wasm",
|
|
"executionSourceMode": "linuxcnc-task-motion-hal-wasm",
|
|
"motionCount": 29,
|
|
"message": "task/HAL status tick 108",
|
|
"task": {
|
|
"state": "ON",
|
|
"mode": "AUTO",
|
|
"interpState": "READING",
|
|
"execState": "WAITING_FOR_MOTION",
|
|
"taskPaused": false,
|
|
"singleStepping": false,
|
|
"cycle": 548,
|
|
"openProgram": "/work/sim/axis/vismach/5axis/table-rotary-tilting/xyzbc-trt/demos/xyzbc_switchkins.ngc",
|
|
"openedLineCount": 3,
|
|
"openedSourceLineCount": 44,
|
|
"executableLineCount": 2,
|
|
"nextProgramLine": 17
|
|
},
|
|
"ui": {
|
|
"taskState": "on",
|
|
"taskMode": "auto",
|
|
"interpState": "reading",
|
|
"execState": "waiting_for_motion",
|
|
"taskCycle": 0,
|
|
"servoCycle": 5480,
|
|
"motionQueueDepth": 0,
|
|
"halChangedPinCount": 0,
|
|
"activeLine": 17,
|
|
"motionProgramLine": 17,
|
|
"halProgramLine": 17,
|
|
"activeLineSource": "motion-status",
|
|
"activeLineHalSynced": true,
|
|
"switchkinsType": 0,
|
|
"axisPose": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 7.5987,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"axisPoseFrame": "work",
|
|
"currentVelocity": 1000.002
|
|
},
|
|
"feedback": {
|
|
"apiName": "web-rtcp-5axis-program-runtime-feedback",
|
|
"sourceMode": "linuxcnc-task-motion-hal-wasm",
|
|
"semanticBoundary": "linuxcnc_task_motion_hal_wasm_simulation_runtime",
|
|
"sampleIndex": 1,
|
|
"motionIndex": 1,
|
|
"line": 18,
|
|
"motionProgramLine": 17,
|
|
"halProgramLine": 17,
|
|
"activeLineSource": "motion-status",
|
|
"activeLineHalSynced": true,
|
|
"type": "TASK_MOTION",
|
|
"timeSeconds": 0,
|
|
"axisPose": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 7.5987,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"currentVelocityMmPerMin": 1000.002,
|
|
"requestedVelocityMmPerMin": 1000.002,
|
|
"distanceToGo": 0,
|
|
"dtg": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 0
|
|
},
|
|
"queueDepth": 0,
|
|
"activeDepth": 0,
|
|
"cycle": 5480,
|
|
"taskCycle": 548,
|
|
"halChangedPinCount": 0,
|
|
"sourceFile": "xyzbc_switchkins_sub.ngc",
|
|
"statement": "g0 x+20 y+20 z#<zmax>",
|
|
"motionType": "rapid",
|
|
"activeKinematics": "identity",
|
|
"tcp": {
|
|
"x": -1.8430336380543046,
|
|
"y": 1.8430336380543042,
|
|
"z": 7.161143746001796
|
|
},
|
|
"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
|
|
}
|
|
}
|
|
},
|
|
"programUiExecution": {
|
|
"apiName": "web-rtcp-5axis-ui-gcode-live-execution",
|
|
"status": "running",
|
|
"source": "programAxisPreviewPath.samples",
|
|
"samplePeriodMs": 50,
|
|
"sampleIndex": 1,
|
|
"sampleCount": 1300,
|
|
"executedSampleCount": 2,
|
|
"timeMs": 50,
|
|
"activeProgram": "configs/sim/axis/vismach/5axis/table-rotary-tilting/demos/xyzbc_switchkins.ngc",
|
|
"sourceFile": "xyzbc_switchkins_sub.ngc",
|
|
"line": 18,
|
|
"statement": "g0 x+20 y+20 z#<zmax>",
|
|
"operation": "rapid-to-quadrant-center",
|
|
"executionIndex": 4,
|
|
"gcodeStepIndex": 18,
|
|
"segmentIndex": 1,
|
|
"motionType": "rapid",
|
|
"activeKinematics": "identity",
|
|
"joint": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 7.5987,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"tcp": {
|
|
"x": -1.8430336380543046,
|
|
"y": 1.8430336380543042,
|
|
"z": 7.161143746001796
|
|
},
|
|
"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"
|
|
},
|
|
"axisPose": {
|
|
"x": -1.8377057979331697,
|
|
"y": 1.8377057979331692,
|
|
"z": 7.140442317565882,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"tcpPose": {
|
|
"x": -1.8377057979331697,
|
|
"y": 1.8377057979331692,
|
|
"z": 7.140442317565882,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"toolAxisVector": {
|
|
"x": 0.24184476264797528,
|
|
"y": 0.24184476264797522,
|
|
"z": 0.9396926207859084
|
|
},
|
|
"canvas": {
|
|
"toolhead": "{\"x\":-0.002,\"y\":0.002,\"z\":0.007}",
|
|
"tcpPose": "{\"x\":-1.838,\"y\":1.838,\"z\":7.14,\"a\":0,\"b\":20,\"c\":45}",
|
|
"toolAxis": "{\"x\":0.242,\"y\":0.242,\"z\":0.94}",
|
|
"executedPathPoints": "0",
|
|
"pathPoints": "1300"
|
|
},
|
|
"frame": "frame-0033.png",
|
|
"captureStartedMs": 1783110133300,
|
|
"captureDurationMs": 152,
|
|
"intervalSincePreviousMs": 116
|
|
},
|
|
{
|
|
"wallClock": "2026-07-03T20:22:13.468Z",
|
|
"perfNow": 6060.10000000149,
|
|
"runState": "running",
|
|
"mode": "auto",
|
|
"interpState": "reading",
|
|
"activeLine": 18,
|
|
"programElapsedSeconds": 0.356,
|
|
"programRemainingSeconds": 61.10500000000001,
|
|
"motionIndex": 1,
|
|
"sampleIndex": 1,
|
|
"programSourceMode": "linuxcnc-machine-file-remap-wasm",
|
|
"executionSourceMode": "linuxcnc-task-motion-hal-wasm",
|
|
"motionCount": 29,
|
|
"message": "task/HAL status tick 112",
|
|
"task": {
|
|
"state": "ON",
|
|
"mode": "AUTO",
|
|
"interpState": "READING",
|
|
"execState": "WAITING_FOR_MOTION",
|
|
"taskPaused": false,
|
|
"singleStepping": false,
|
|
"cycle": 568,
|
|
"openProgram": "/work/sim/axis/vismach/5axis/table-rotary-tilting/xyzbc-trt/demos/xyzbc_switchkins.ngc",
|
|
"openedLineCount": 3,
|
|
"openedSourceLineCount": 44,
|
|
"executableLineCount": 2,
|
|
"nextProgramLine": 17
|
|
},
|
|
"ui": {
|
|
"taskState": "on",
|
|
"taskMode": "auto",
|
|
"interpState": "reading",
|
|
"execState": "waiting_for_motion",
|
|
"taskCycle": 0,
|
|
"servoCycle": 5680,
|
|
"motionQueueDepth": 0,
|
|
"halChangedPinCount": 0,
|
|
"activeLine": 17,
|
|
"motionProgramLine": 17,
|
|
"halProgramLine": 17,
|
|
"activeLineSource": "motion-status",
|
|
"activeLineHalSynced": true,
|
|
"switchkinsType": 0,
|
|
"axisPose": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 7.51057,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"axisPoseFrame": "work",
|
|
"currentVelocity": 1000.002
|
|
},
|
|
"feedback": {
|
|
"apiName": "web-rtcp-5axis-program-runtime-feedback",
|
|
"sourceMode": "linuxcnc-task-motion-hal-wasm",
|
|
"semanticBoundary": "linuxcnc_task_motion_hal_wasm_simulation_runtime",
|
|
"sampleIndex": 1,
|
|
"motionIndex": 1,
|
|
"line": 18,
|
|
"motionProgramLine": 17,
|
|
"halProgramLine": 17,
|
|
"activeLineSource": "motion-status",
|
|
"activeLineHalSynced": true,
|
|
"type": "TASK_MOTION",
|
|
"timeSeconds": 0,
|
|
"axisPose": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 7.51057,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"currentVelocityMmPerMin": 1000.002,
|
|
"requestedVelocityMmPerMin": 1000.002,
|
|
"distanceToGo": 0,
|
|
"dtg": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 0
|
|
},
|
|
"queueDepth": 0,
|
|
"activeDepth": 0,
|
|
"cycle": 5680,
|
|
"taskCycle": 568,
|
|
"halChangedPinCount": 0,
|
|
"sourceFile": "xyzbc_switchkins_sub.ngc",
|
|
"statement": "g0 x+20 y+20 z#<zmax>",
|
|
"motionType": "rapid",
|
|
"activeKinematics": "identity",
|
|
"tcp": {
|
|
"x": -1.8217198591221386,
|
|
"y": 1.8217198591221382,
|
|
"z": 7.078328635331935
|
|
},
|
|
"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
|
|
}
|
|
}
|
|
},
|
|
"programUiExecution": {
|
|
"apiName": "web-rtcp-5axis-ui-gcode-live-execution",
|
|
"status": "running",
|
|
"source": "programAxisPreviewPath.samples",
|
|
"samplePeriodMs": 50,
|
|
"sampleIndex": 1,
|
|
"sampleCount": 1300,
|
|
"executedSampleCount": 2,
|
|
"timeMs": 50,
|
|
"activeProgram": "configs/sim/axis/vismach/5axis/table-rotary-tilting/demos/xyzbc_switchkins.ngc",
|
|
"sourceFile": "xyzbc_switchkins_sub.ngc",
|
|
"line": 18,
|
|
"statement": "g0 x+20 y+20 z#<zmax>",
|
|
"operation": "rapid-to-quadrant-center",
|
|
"executionIndex": 4,
|
|
"gcodeStepIndex": 18,
|
|
"segmentIndex": 1,
|
|
"motionType": "rapid",
|
|
"activeKinematics": "identity",
|
|
"joint": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 7.51057,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"tcp": {
|
|
"x": -1.8217198591221386,
|
|
"y": 1.8217198591221382,
|
|
"z": 7.078328635331935
|
|
},
|
|
"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"
|
|
},
|
|
"axisPose": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 7.51057,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"tcpPose": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 7.51057,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"toolAxisVector": {
|
|
"x": 0.24184476264797528,
|
|
"y": 0.24184476264797522,
|
|
"z": 0.9396926207859084
|
|
},
|
|
"canvas": {
|
|
"toolhead": "{\"x\":-0.002,\"y\":0.002,\"z\":0.007}",
|
|
"tcpPose": "{\"x\":0,\"y\":0,\"z\":7.511,\"a\":0,\"b\":20,\"c\":45}",
|
|
"toolAxis": "{\"x\":0.242,\"y\":0.242,\"z\":0.94}",
|
|
"executedPathPoints": "0",
|
|
"pathPoints": "1300"
|
|
},
|
|
"frame": "frame-0034.png",
|
|
"captureStartedMs": 1783110133452,
|
|
"captureDurationMs": 125,
|
|
"intervalSincePreviousMs": 152
|
|
},
|
|
{
|
|
"wallClock": "2026-07-03T20:22:13.588Z",
|
|
"perfNow": 6180.20000000298,
|
|
"runState": "running",
|
|
"mode": "auto",
|
|
"interpState": "reading",
|
|
"activeLine": 18,
|
|
"programElapsedSeconds": 0.356,
|
|
"programRemainingSeconds": 61.10500000000001,
|
|
"motionIndex": 1,
|
|
"sampleIndex": 1,
|
|
"programSourceMode": "linuxcnc-machine-file-remap-wasm",
|
|
"executionSourceMode": "linuxcnc-task-motion-hal-wasm",
|
|
"motionCount": 29,
|
|
"message": "task/HAL status tick 115",
|
|
"task": {
|
|
"state": "ON",
|
|
"mode": "AUTO",
|
|
"interpState": "READING",
|
|
"execState": "WAITING_FOR_MOTION",
|
|
"taskPaused": false,
|
|
"singleStepping": false,
|
|
"cycle": 583,
|
|
"openProgram": "/work/sim/axis/vismach/5axis/table-rotary-tilting/xyzbc-trt/demos/xyzbc_switchkins.ngc",
|
|
"openedLineCount": 3,
|
|
"openedSourceLineCount": 44,
|
|
"executableLineCount": 2,
|
|
"nextProgramLine": 17
|
|
},
|
|
"ui": {
|
|
"taskState": "on",
|
|
"taskMode": "auto",
|
|
"interpState": "reading",
|
|
"execState": "waiting_for_motion",
|
|
"taskCycle": 0,
|
|
"servoCycle": 5830,
|
|
"motionQueueDepth": 0,
|
|
"halChangedPinCount": 0,
|
|
"activeLine": 17,
|
|
"motionProgramLine": 17,
|
|
"halProgramLine": 17,
|
|
"activeLineSource": "motion-status",
|
|
"activeLineHalSynced": true,
|
|
"switchkinsType": 0,
|
|
"axisPose": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 7.44448,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"axisPoseFrame": "work",
|
|
"currentVelocity": 1000.002
|
|
},
|
|
"feedback": {
|
|
"apiName": "web-rtcp-5axis-program-runtime-feedback",
|
|
"sourceMode": "linuxcnc-task-motion-hal-wasm",
|
|
"semanticBoundary": "linuxcnc_task_motion_hal_wasm_simulation_runtime",
|
|
"sampleIndex": 1,
|
|
"motionIndex": 1,
|
|
"line": 18,
|
|
"motionProgramLine": 17,
|
|
"halProgramLine": 17,
|
|
"activeLineSource": "motion-status",
|
|
"activeLineHalSynced": true,
|
|
"type": "TASK_MOTION",
|
|
"timeSeconds": 0,
|
|
"axisPose": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 7.44448,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"currentVelocityMmPerMin": 1000.002,
|
|
"requestedVelocityMmPerMin": 1000.002,
|
|
"distanceToGo": 0,
|
|
"dtg": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 0
|
|
},
|
|
"queueDepth": 0,
|
|
"activeDepth": 0,
|
|
"cycle": 5830,
|
|
"taskCycle": 583,
|
|
"halChangedPinCount": 0,
|
|
"sourceFile": "xyzbc_switchkins_sub.ngc",
|
|
"statement": "g0 x+20 y+20 z#<zmax>",
|
|
"motionType": "rapid",
|
|
"activeKinematics": "identity",
|
|
"tcp": {
|
|
"x": -1.805736338758734,
|
|
"y": 1.8057363387587335,
|
|
"z": 7.016224350024194
|
|
},
|
|
"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
|
|
}
|
|
}
|
|
},
|
|
"programUiExecution": {
|
|
"apiName": "web-rtcp-5axis-ui-gcode-live-execution",
|
|
"status": "running",
|
|
"source": "programAxisPreviewPath.samples",
|
|
"samplePeriodMs": 50,
|
|
"sampleIndex": 1,
|
|
"sampleCount": 1300,
|
|
"executedSampleCount": 2,
|
|
"timeMs": 50,
|
|
"activeProgram": "configs/sim/axis/vismach/5axis/table-rotary-tilting/demos/xyzbc_switchkins.ngc",
|
|
"sourceFile": "xyzbc_switchkins_sub.ngc",
|
|
"line": 18,
|
|
"statement": "g0 x+20 y+20 z#<zmax>",
|
|
"operation": "rapid-to-quadrant-center",
|
|
"executionIndex": 4,
|
|
"gcodeStepIndex": 18,
|
|
"segmentIndex": 1,
|
|
"motionType": "rapid",
|
|
"activeKinematics": "identity",
|
|
"joint": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 7.44448,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"tcp": {
|
|
"x": -1.805736338758734,
|
|
"y": 1.8057363387587335,
|
|
"z": 7.016224350024194
|
|
},
|
|
"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"
|
|
},
|
|
"axisPose": {
|
|
"x": -1.800408498637599,
|
|
"y": 1.8004084986375988,
|
|
"z": 6.99552292158828,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"tcpPose": {
|
|
"x": -1.800408498637599,
|
|
"y": 1.8004084986375988,
|
|
"z": 6.99552292158828,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"toolAxisVector": {
|
|
"x": 0.24184476264797528,
|
|
"y": 0.24184476264797522,
|
|
"z": 0.9396926207859084
|
|
},
|
|
"canvas": {
|
|
"toolhead": "{\"x\":-0.002,\"y\":0.002,\"z\":0.007}",
|
|
"tcpPose": "{\"x\":-1.8,\"y\":1.8,\"z\":6.996,\"a\":0,\"b\":20,\"c\":45}",
|
|
"toolAxis": "{\"x\":0.242,\"y\":0.242,\"z\":0.94}",
|
|
"executedPathPoints": "0",
|
|
"pathPoints": "1300"
|
|
},
|
|
"frame": "frame-0035.png",
|
|
"captureStartedMs": 1783110133577,
|
|
"captureDurationMs": 159,
|
|
"intervalSincePreviousMs": 125
|
|
},
|
|
{
|
|
"wallClock": "2026-07-03T20:22:13.750Z",
|
|
"perfNow": 6342.400000002235,
|
|
"runState": "running",
|
|
"mode": "auto",
|
|
"interpState": "reading",
|
|
"activeLine": 18,
|
|
"programElapsedSeconds": 0.356,
|
|
"programRemainingSeconds": 61.10500000000001,
|
|
"motionIndex": 1,
|
|
"sampleIndex": 1,
|
|
"programSourceMode": "linuxcnc-machine-file-remap-wasm",
|
|
"executionSourceMode": "linuxcnc-task-motion-hal-wasm",
|
|
"motionCount": 29,
|
|
"message": "task/HAL status tick 119",
|
|
"task": {
|
|
"state": "ON",
|
|
"mode": "AUTO",
|
|
"interpState": "READING",
|
|
"execState": "WAITING_FOR_MOTION",
|
|
"taskPaused": false,
|
|
"singleStepping": false,
|
|
"cycle": 603,
|
|
"openProgram": "/work/sim/axis/vismach/5axis/table-rotary-tilting/xyzbc-trt/demos/xyzbc_switchkins.ngc",
|
|
"openedLineCount": 3,
|
|
"openedSourceLineCount": 44,
|
|
"executableLineCount": 2,
|
|
"nextProgramLine": 17
|
|
},
|
|
"ui": {
|
|
"taskState": "on",
|
|
"taskMode": "auto",
|
|
"interpState": "reading",
|
|
"execState": "waiting_for_motion",
|
|
"taskCycle": 0,
|
|
"servoCycle": 6030,
|
|
"motionQueueDepth": 0,
|
|
"halChangedPinCount": 0,
|
|
"activeLine": 17,
|
|
"motionProgramLine": 17,
|
|
"halProgramLine": 17,
|
|
"activeLineSource": "motion-status",
|
|
"activeLineHalSynced": true,
|
|
"switchkinsType": 0,
|
|
"axisPose": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 7.35636,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"axisPoseFrame": "work",
|
|
"currentVelocity": 1000.002
|
|
},
|
|
"feedback": {
|
|
"apiName": "web-rtcp-5axis-program-runtime-feedback",
|
|
"sourceMode": "linuxcnc-task-motion-hal-wasm",
|
|
"semanticBoundary": "linuxcnc_task_motion_hal_wasm_simulation_runtime",
|
|
"sampleIndex": 1,
|
|
"motionIndex": 1,
|
|
"line": 18,
|
|
"motionProgramLine": 17,
|
|
"halProgramLine": 17,
|
|
"activeLineSource": "motion-status",
|
|
"activeLineHalSynced": true,
|
|
"type": "TASK_MOTION",
|
|
"timeSeconds": 0,
|
|
"axisPose": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 7.35636,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"currentVelocityMmPerMin": 1000.002,
|
|
"requestedVelocityMmPerMin": 1000.002,
|
|
"distanceToGo": 0,
|
|
"dtg": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 0
|
|
},
|
|
"queueDepth": 0,
|
|
"activeDepth": 0,
|
|
"cycle": 6030,
|
|
"taskCycle": 603,
|
|
"halChangedPinCount": 0,
|
|
"sourceFile": "xyzbc_switchkins_sub.ngc",
|
|
"statement": "g0 x+20 y+20 z#<zmax>",
|
|
"motionType": "rapid",
|
|
"activeKinematics": "identity",
|
|
"tcp": {
|
|
"x": -1.784424978274194,
|
|
"y": 1.7844249782741939,
|
|
"z": 6.933418636280538
|
|
},
|
|
"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
|
|
}
|
|
}
|
|
},
|
|
"programUiExecution": {
|
|
"apiName": "web-rtcp-5axis-ui-gcode-live-execution",
|
|
"status": "running",
|
|
"source": "programAxisPreviewPath.samples",
|
|
"samplePeriodMs": 50,
|
|
"sampleIndex": 1,
|
|
"sampleCount": 1300,
|
|
"executedSampleCount": 2,
|
|
"timeMs": 50,
|
|
"activeProgram": "configs/sim/axis/vismach/5axis/table-rotary-tilting/demos/xyzbc_switchkins.ngc",
|
|
"sourceFile": "xyzbc_switchkins_sub.ngc",
|
|
"line": 18,
|
|
"statement": "g0 x+20 y+20 z#<zmax>",
|
|
"operation": "rapid-to-quadrant-center",
|
|
"executionIndex": 4,
|
|
"gcodeStepIndex": 18,
|
|
"segmentIndex": 1,
|
|
"motionType": "rapid",
|
|
"activeKinematics": "identity",
|
|
"joint": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 7.35636,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"tcp": {
|
|
"x": -1.784424978274194,
|
|
"y": 1.7844249782741939,
|
|
"z": 6.933418636280538
|
|
},
|
|
"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"
|
|
},
|
|
"axisPose": {
|
|
"x": -1.7790971381530594,
|
|
"y": 1.779097138153059,
|
|
"z": 6.912717207844625,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"tcpPose": {
|
|
"x": -1.7790971381530594,
|
|
"y": 1.779097138153059,
|
|
"z": 6.912717207844625,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"toolAxisVector": {
|
|
"x": 0.24184476264797528,
|
|
"y": 0.24184476264797522,
|
|
"z": 0.9396926207859084
|
|
},
|
|
"canvas": {
|
|
"toolhead": "{\"x\":-0.002,\"y\":0.002,\"z\":0.007}",
|
|
"tcpPose": "{\"x\":-1.779,\"y\":1.779,\"z\":6.913,\"a\":0,\"b\":20,\"c\":45}",
|
|
"toolAxis": "{\"x\":0.242,\"y\":0.242,\"z\":0.94}",
|
|
"executedPathPoints": "0",
|
|
"pathPoints": "1300"
|
|
},
|
|
"frame": "frame-0036.png",
|
|
"captureStartedMs": 1783110133736,
|
|
"captureDurationMs": 166,
|
|
"intervalSincePreviousMs": 159
|
|
},
|
|
{
|
|
"wallClock": "2026-07-03T20:22:13.918Z",
|
|
"perfNow": 6510.5,
|
|
"runState": "running",
|
|
"mode": "auto",
|
|
"interpState": "reading",
|
|
"activeLine": 18,
|
|
"programElapsedSeconds": 0.356,
|
|
"programRemainingSeconds": 61.10500000000001,
|
|
"motionIndex": 1,
|
|
"sampleIndex": 1,
|
|
"programSourceMode": "linuxcnc-machine-file-remap-wasm",
|
|
"executionSourceMode": "linuxcnc-task-motion-hal-wasm",
|
|
"motionCount": 29,
|
|
"message": "task/HAL status tick 124",
|
|
"task": {
|
|
"state": "ON",
|
|
"mode": "AUTO",
|
|
"interpState": "READING",
|
|
"execState": "WAITING_FOR_MOTION",
|
|
"taskPaused": false,
|
|
"singleStepping": false,
|
|
"cycle": 628,
|
|
"openProgram": "/work/sim/axis/vismach/5axis/table-rotary-tilting/xyzbc-trt/demos/xyzbc_switchkins.ngc",
|
|
"openedLineCount": 3,
|
|
"openedSourceLineCount": 44,
|
|
"executableLineCount": 2,
|
|
"nextProgramLine": 17
|
|
},
|
|
"ui": {
|
|
"taskState": "on",
|
|
"taskMode": "auto",
|
|
"interpState": "reading",
|
|
"execState": "waiting_for_motion",
|
|
"taskCycle": 0,
|
|
"servoCycle": 6280,
|
|
"motionQueueDepth": 0,
|
|
"halChangedPinCount": 0,
|
|
"activeLine": 17,
|
|
"motionProgramLine": 17,
|
|
"halProgramLine": 17,
|
|
"activeLineSource": "motion-status",
|
|
"activeLineHalSynced": true,
|
|
"switchkinsType": 0,
|
|
"axisPose": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 7.24621,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"axisPoseFrame": "work",
|
|
"currentVelocity": 1000.002
|
|
},
|
|
"feedback": {
|
|
"apiName": "web-rtcp-5axis-program-runtime-feedback",
|
|
"sourceMode": "linuxcnc-task-motion-hal-wasm",
|
|
"semanticBoundary": "linuxcnc_task_motion_hal_wasm_simulation_runtime",
|
|
"sampleIndex": 1,
|
|
"motionIndex": 1,
|
|
"line": 18,
|
|
"motionProgramLine": 17,
|
|
"halProgramLine": 17,
|
|
"activeLineSource": "motion-status",
|
|
"activeLineHalSynced": true,
|
|
"type": "TASK_MOTION",
|
|
"timeSeconds": 0,
|
|
"axisPose": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 7.24621,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"currentVelocityMmPerMin": 1000.002,
|
|
"requestedVelocityMmPerMin": 1000.002,
|
|
"distanceToGo": 0,
|
|
"dtg": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 0
|
|
},
|
|
"queueDepth": 0,
|
|
"activeDepth": 0,
|
|
"cycle": 6280,
|
|
"taskCycle": 628,
|
|
"halChangedPinCount": 0,
|
|
"sourceFile": "xyzbc_switchkins_sub.ngc",
|
|
"statement": "g0 x+20 y+20 z#<zmax>",
|
|
"motionType": "rapid",
|
|
"activeKinematics": "identity",
|
|
"tcp": {
|
|
"x": -1.7577857776685197,
|
|
"y": 1.7577857776685193,
|
|
"z": 6.829911494100971
|
|
},
|
|
"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
|
|
}
|
|
}
|
|
},
|
|
"programUiExecution": {
|
|
"apiName": "web-rtcp-5axis-ui-gcode-live-execution",
|
|
"status": "running",
|
|
"source": "programAxisPreviewPath.samples",
|
|
"samplePeriodMs": 50,
|
|
"sampleIndex": 1,
|
|
"sampleCount": 1300,
|
|
"executedSampleCount": 2,
|
|
"timeMs": 50,
|
|
"activeProgram": "configs/sim/axis/vismach/5axis/table-rotary-tilting/demos/xyzbc_switchkins.ngc",
|
|
"sourceFile": "xyzbc_switchkins_sub.ngc",
|
|
"line": 18,
|
|
"statement": "g0 x+20 y+20 z#<zmax>",
|
|
"operation": "rapid-to-quadrant-center",
|
|
"executionIndex": 4,
|
|
"gcodeStepIndex": 18,
|
|
"segmentIndex": 1,
|
|
"motionType": "rapid",
|
|
"activeKinematics": "identity",
|
|
"joint": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 7.24621,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"tcp": {
|
|
"x": -1.7577857776685197,
|
|
"y": 1.7577857776685193,
|
|
"z": 6.829911494100971
|
|
},
|
|
"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"
|
|
},
|
|
"axisPose": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 7.24621,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"tcpPose": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 7.24621,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"toolAxisVector": {
|
|
"x": 0.24184476264797528,
|
|
"y": 0.24184476264797522,
|
|
"z": 0.9396926207859084
|
|
},
|
|
"canvas": {
|
|
"toolhead": "{\"x\":-0.002,\"y\":0.002,\"z\":0.007}",
|
|
"tcpPose": "{\"x\":0,\"y\":0,\"z\":7.246,\"a\":0,\"b\":20,\"c\":45}",
|
|
"toolAxis": "{\"x\":0.242,\"y\":0.242,\"z\":0.94}",
|
|
"executedPathPoints": "0",
|
|
"pathPoints": "1300"
|
|
},
|
|
"frame": "frame-0037.png",
|
|
"captureStartedMs": 1783110133902,
|
|
"captureDurationMs": 149,
|
|
"intervalSincePreviousMs": 166
|
|
},
|
|
{
|
|
"wallClock": "2026-07-03T20:22:14.067Z",
|
|
"perfNow": 6659.20000000298,
|
|
"runState": "running",
|
|
"mode": "auto",
|
|
"interpState": "reading",
|
|
"activeLine": 18,
|
|
"programElapsedSeconds": 0.356,
|
|
"programRemainingSeconds": 61.10500000000001,
|
|
"motionIndex": 1,
|
|
"sampleIndex": 1,
|
|
"programSourceMode": "linuxcnc-machine-file-remap-wasm",
|
|
"executionSourceMode": "linuxcnc-task-motion-hal-wasm",
|
|
"motionCount": 29,
|
|
"message": "task/HAL status tick 128",
|
|
"task": {
|
|
"state": "ON",
|
|
"mode": "AUTO",
|
|
"interpState": "READING",
|
|
"execState": "WAITING_FOR_MOTION",
|
|
"taskPaused": false,
|
|
"singleStepping": false,
|
|
"cycle": 648,
|
|
"openProgram": "/work/sim/axis/vismach/5axis/table-rotary-tilting/xyzbc-trt/demos/xyzbc_switchkins.ngc",
|
|
"openedLineCount": 3,
|
|
"openedSourceLineCount": 44,
|
|
"executableLineCount": 2,
|
|
"nextProgramLine": 17
|
|
},
|
|
"ui": {
|
|
"taskState": "on",
|
|
"taskMode": "auto",
|
|
"interpState": "reading",
|
|
"execState": "waiting_for_motion",
|
|
"taskCycle": 0,
|
|
"servoCycle": 6480,
|
|
"motionQueueDepth": 0,
|
|
"halChangedPinCount": 0,
|
|
"activeLine": 17,
|
|
"motionProgramLine": 17,
|
|
"halProgramLine": 17,
|
|
"activeLineSource": "motion-status",
|
|
"activeLineHalSynced": true,
|
|
"switchkinsType": 0,
|
|
"axisPose": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 7.15809,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"axisPoseFrame": "work",
|
|
"currentVelocity": 1000.002
|
|
},
|
|
"feedback": {
|
|
"apiName": "web-rtcp-5axis-program-runtime-feedback",
|
|
"sourceMode": "linuxcnc-task-motion-hal-wasm",
|
|
"semanticBoundary": "linuxcnc_task_motion_hal_wasm_simulation_runtime",
|
|
"sampleIndex": 1,
|
|
"motionIndex": 1,
|
|
"line": 18,
|
|
"motionProgramLine": 17,
|
|
"halProgramLine": 17,
|
|
"activeLineSource": "motion-status",
|
|
"activeLineHalSynced": true,
|
|
"type": "TASK_MOTION",
|
|
"timeSeconds": 0,
|
|
"axisPose": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 7.15809,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"currentVelocityMmPerMin": 1000.002,
|
|
"requestedVelocityMmPerMin": 1000.002,
|
|
"distanceToGo": 0,
|
|
"dtg": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 0
|
|
},
|
|
"queueDepth": 0,
|
|
"activeDepth": 0,
|
|
"cycle": 6480,
|
|
"taskCycle": 648,
|
|
"halChangedPinCount": 0,
|
|
"sourceFile": "xyzbc_switchkins_sub.ngc",
|
|
"statement": "g0 x+20 y+20 z#<zmax>",
|
|
"motionType": "rapid",
|
|
"activeKinematics": "identity",
|
|
"tcp": {
|
|
"x": -1.73647441718398,
|
|
"y": 1.7364744171839797,
|
|
"z": 6.747105780357317
|
|
},
|
|
"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
|
|
}
|
|
}
|
|
},
|
|
"programUiExecution": {
|
|
"apiName": "web-rtcp-5axis-ui-gcode-live-execution",
|
|
"status": "running",
|
|
"source": "programAxisPreviewPath.samples",
|
|
"samplePeriodMs": 50,
|
|
"sampleIndex": 1,
|
|
"sampleCount": 1300,
|
|
"executedSampleCount": 2,
|
|
"timeMs": 50,
|
|
"activeProgram": "configs/sim/axis/vismach/5axis/table-rotary-tilting/demos/xyzbc_switchkins.ngc",
|
|
"sourceFile": "xyzbc_switchkins_sub.ngc",
|
|
"line": 18,
|
|
"statement": "g0 x+20 y+20 z#<zmax>",
|
|
"operation": "rapid-to-quadrant-center",
|
|
"executionIndex": 4,
|
|
"gcodeStepIndex": 18,
|
|
"segmentIndex": 1,
|
|
"motionType": "rapid",
|
|
"activeKinematics": "identity",
|
|
"joint": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 7.15809,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"tcp": {
|
|
"x": -1.73647441718398,
|
|
"y": 1.7364744171839797,
|
|
"z": 6.747105780357317
|
|
},
|
|
"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"
|
|
},
|
|
"axisPose": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 7.15809,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"tcpPose": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 7.15809,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"toolAxisVector": {
|
|
"x": 0.24184476264797528,
|
|
"y": 0.24184476264797522,
|
|
"z": 0.9396926207859084
|
|
},
|
|
"canvas": {
|
|
"toolhead": "{\"x\":-0.002,\"y\":0.002,\"z\":0.007}",
|
|
"tcpPose": "{\"x\":0,\"y\":0,\"z\":7.158,\"a\":0,\"b\":20,\"c\":45}",
|
|
"toolAxis": "{\"x\":0.242,\"y\":0.242,\"z\":0.94}",
|
|
"executedPathPoints": "0",
|
|
"pathPoints": "1300"
|
|
},
|
|
"frame": "frame-0038.png",
|
|
"captureStartedMs": 1783110134051,
|
|
"captureDurationMs": 131,
|
|
"intervalSincePreviousMs": 149
|
|
},
|
|
{
|
|
"wallClock": "2026-07-03T20:22:14.188Z",
|
|
"perfNow": 6779.900000002235,
|
|
"runState": "running",
|
|
"mode": "auto",
|
|
"interpState": "reading",
|
|
"activeLine": 18,
|
|
"programElapsedSeconds": 0.356,
|
|
"programRemainingSeconds": 61.10500000000001,
|
|
"motionIndex": 1,
|
|
"sampleIndex": 1,
|
|
"programSourceMode": "linuxcnc-machine-file-remap-wasm",
|
|
"executionSourceMode": "linuxcnc-task-motion-hal-wasm",
|
|
"motionCount": 29,
|
|
"message": "task/HAL status tick 131",
|
|
"task": {
|
|
"state": "ON",
|
|
"mode": "AUTO",
|
|
"interpState": "READING",
|
|
"execState": "WAITING_FOR_MOTION",
|
|
"taskPaused": false,
|
|
"singleStepping": false,
|
|
"cycle": 663,
|
|
"openProgram": "/work/sim/axis/vismach/5axis/table-rotary-tilting/xyzbc-trt/demos/xyzbc_switchkins.ngc",
|
|
"openedLineCount": 3,
|
|
"openedSourceLineCount": 44,
|
|
"executableLineCount": 2,
|
|
"nextProgramLine": 17
|
|
},
|
|
"ui": {
|
|
"taskState": "on",
|
|
"taskMode": "auto",
|
|
"interpState": "reading",
|
|
"execState": "waiting_for_motion",
|
|
"taskCycle": 0,
|
|
"servoCycle": 6630,
|
|
"motionQueueDepth": 0,
|
|
"halChangedPinCount": 0,
|
|
"activeLine": 17,
|
|
"motionProgramLine": 17,
|
|
"halProgramLine": 17,
|
|
"activeLineSource": "motion-status",
|
|
"activeLineHalSynced": true,
|
|
"switchkinsType": 0,
|
|
"axisPose": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 7.092,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"axisPoseFrame": "work",
|
|
"currentVelocity": 1000.002
|
|
},
|
|
"feedback": {
|
|
"apiName": "web-rtcp-5axis-program-runtime-feedback",
|
|
"sourceMode": "linuxcnc-task-motion-hal-wasm",
|
|
"semanticBoundary": "linuxcnc_task_motion_hal_wasm_simulation_runtime",
|
|
"sampleIndex": 1,
|
|
"motionIndex": 1,
|
|
"line": 18,
|
|
"motionProgramLine": 17,
|
|
"halProgramLine": 17,
|
|
"activeLineSource": "motion-status",
|
|
"activeLineHalSynced": true,
|
|
"type": "TASK_MOTION",
|
|
"timeSeconds": 0,
|
|
"axisPose": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 7.092,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"currentVelocityMmPerMin": 1000.002,
|
|
"requestedVelocityMmPerMin": 1000.002,
|
|
"distanceToGo": 0,
|
|
"dtg": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 0
|
|
},
|
|
"queueDepth": 0,
|
|
"activeDepth": 0,
|
|
"cycle": 6630,
|
|
"taskCycle": 663,
|
|
"halChangedPinCount": 0,
|
|
"sourceFile": "xyzbc_switchkins_sub.ngc",
|
|
"statement": "g0 x+20 y+20 z#<zmax>",
|
|
"motionType": "rapid",
|
|
"activeKinematics": "identity",
|
|
"tcp": {
|
|
"x": -1.7204908968205754,
|
|
"y": 1.720490896820575,
|
|
"z": 6.685001495049576
|
|
},
|
|
"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
|
|
}
|
|
}
|
|
},
|
|
"programUiExecution": {
|
|
"apiName": "web-rtcp-5axis-ui-gcode-live-execution",
|
|
"status": "running",
|
|
"source": "programAxisPreviewPath.samples",
|
|
"samplePeriodMs": 50,
|
|
"sampleIndex": 1,
|
|
"sampleCount": 1300,
|
|
"executedSampleCount": 2,
|
|
"timeMs": 50,
|
|
"activeProgram": "configs/sim/axis/vismach/5axis/table-rotary-tilting/demos/xyzbc_switchkins.ngc",
|
|
"sourceFile": "xyzbc_switchkins_sub.ngc",
|
|
"line": 18,
|
|
"statement": "g0 x+20 y+20 z#<zmax>",
|
|
"operation": "rapid-to-quadrant-center",
|
|
"executionIndex": 4,
|
|
"gcodeStepIndex": 18,
|
|
"segmentIndex": 1,
|
|
"motionType": "rapid",
|
|
"activeKinematics": "identity",
|
|
"joint": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 7.092,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"tcp": {
|
|
"x": -1.7204908968205754,
|
|
"y": 1.720490896820575,
|
|
"z": 6.685001495049576
|
|
},
|
|
"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"
|
|
},
|
|
"axisPose": {
|
|
"x": -1.7151630566994405,
|
|
"y": 1.7151630566994402,
|
|
"z": 6.664300066613662,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"tcpPose": {
|
|
"x": -1.7151630566994405,
|
|
"y": 1.7151630566994402,
|
|
"z": 6.664300066613662,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"toolAxisVector": {
|
|
"x": 0.24184476264797528,
|
|
"y": 0.24184476264797522,
|
|
"z": 0.9396926207859084
|
|
},
|
|
"canvas": {
|
|
"toolhead": "{\"x\":-0.002,\"y\":0.002,\"z\":0.007}",
|
|
"tcpPose": "{\"x\":-1.715,\"y\":1.715,\"z\":6.664,\"a\":0,\"b\":20,\"c\":45}",
|
|
"toolAxis": "{\"x\":0.242,\"y\":0.242,\"z\":0.94}",
|
|
"executedPathPoints": "0",
|
|
"pathPoints": "1300"
|
|
},
|
|
"frame": "frame-0039.png",
|
|
"captureStartedMs": 1783110134182,
|
|
"captureDurationMs": 150,
|
|
"intervalSincePreviousMs": 131
|
|
},
|
|
{
|
|
"wallClock": "2026-07-03T20:22:14.340Z",
|
|
"perfNow": 6932.10000000149,
|
|
"runState": "running",
|
|
"mode": "auto",
|
|
"interpState": "reading",
|
|
"activeLine": 18,
|
|
"programElapsedSeconds": 0.356,
|
|
"programRemainingSeconds": 61.10500000000001,
|
|
"motionIndex": 1,
|
|
"sampleIndex": 1,
|
|
"programSourceMode": "linuxcnc-machine-file-remap-wasm",
|
|
"executionSourceMode": "linuxcnc-task-motion-hal-wasm",
|
|
"motionCount": 29,
|
|
"message": "task/HAL status tick 135",
|
|
"task": {
|
|
"state": "ON",
|
|
"mode": "AUTO",
|
|
"interpState": "READING",
|
|
"execState": "WAITING_FOR_MOTION",
|
|
"taskPaused": false,
|
|
"singleStepping": false,
|
|
"cycle": 683,
|
|
"openProgram": "/work/sim/axis/vismach/5axis/table-rotary-tilting/xyzbc-trt/demos/xyzbc_switchkins.ngc",
|
|
"openedLineCount": 3,
|
|
"openedSourceLineCount": 44,
|
|
"executableLineCount": 2,
|
|
"nextProgramLine": 17
|
|
},
|
|
"ui": {
|
|
"taskState": "on",
|
|
"taskMode": "auto",
|
|
"interpState": "reading",
|
|
"execState": "waiting_for_motion",
|
|
"taskCycle": 0,
|
|
"servoCycle": 6830,
|
|
"motionQueueDepth": 0,
|
|
"halChangedPinCount": 0,
|
|
"activeLine": 17,
|
|
"motionProgramLine": 17,
|
|
"halProgramLine": 17,
|
|
"activeLineSource": "motion-status",
|
|
"activeLineHalSynced": true,
|
|
"switchkinsType": 0,
|
|
"axisPose": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 7.00388,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"axisPoseFrame": "work",
|
|
"currentVelocity": 1000.002
|
|
},
|
|
"feedback": {
|
|
"apiName": "web-rtcp-5axis-program-runtime-feedback",
|
|
"sourceMode": "linuxcnc-task-motion-hal-wasm",
|
|
"semanticBoundary": "linuxcnc_task_motion_hal_wasm_simulation_runtime",
|
|
"sampleIndex": 1,
|
|
"motionIndex": 1,
|
|
"line": 18,
|
|
"motionProgramLine": 17,
|
|
"halProgramLine": 17,
|
|
"activeLineSource": "motion-status",
|
|
"activeLineHalSynced": true,
|
|
"type": "TASK_MOTION",
|
|
"timeSeconds": 0,
|
|
"axisPose": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 7.00388,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"currentVelocityMmPerMin": 1000.002,
|
|
"requestedVelocityMmPerMin": 1000.002,
|
|
"distanceToGo": 0,
|
|
"dtg": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 0
|
|
},
|
|
"queueDepth": 0,
|
|
"activeDepth": 0,
|
|
"cycle": 6830,
|
|
"taskCycle": 683,
|
|
"halChangedPinCount": 0,
|
|
"sourceFile": "xyzbc_switchkins_sub.ngc",
|
|
"statement": "g0 x+20 y+20 z#<zmax>",
|
|
"motionType": "rapid",
|
|
"activeKinematics": "identity",
|
|
"tcp": {
|
|
"x": -1.6991795363360358,
|
|
"y": 1.6991795363360356,
|
|
"z": 6.602195781305921
|
|
},
|
|
"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
|
|
}
|
|
}
|
|
},
|
|
"programUiExecution": {
|
|
"apiName": "web-rtcp-5axis-ui-gcode-live-execution",
|
|
"status": "running",
|
|
"source": "programAxisPreviewPath.samples",
|
|
"samplePeriodMs": 50,
|
|
"sampleIndex": 1,
|
|
"sampleCount": 1300,
|
|
"executedSampleCount": 2,
|
|
"timeMs": 50,
|
|
"activeProgram": "configs/sim/axis/vismach/5axis/table-rotary-tilting/demos/xyzbc_switchkins.ngc",
|
|
"sourceFile": "xyzbc_switchkins_sub.ngc",
|
|
"line": 18,
|
|
"statement": "g0 x+20 y+20 z#<zmax>",
|
|
"operation": "rapid-to-quadrant-center",
|
|
"executionIndex": 4,
|
|
"gcodeStepIndex": 18,
|
|
"segmentIndex": 1,
|
|
"motionType": "rapid",
|
|
"activeKinematics": "identity",
|
|
"joint": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 7.00388,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"tcp": {
|
|
"x": -1.6991795363360358,
|
|
"y": 1.6991795363360356,
|
|
"z": 6.602195781305921
|
|
},
|
|
"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"
|
|
},
|
|
"axisPose": {
|
|
"x": -1.693851696214901,
|
|
"y": 1.6938516962149006,
|
|
"z": 6.581494352870008,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"tcpPose": {
|
|
"x": -1.693851696214901,
|
|
"y": 1.6938516962149006,
|
|
"z": 6.581494352870008,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"toolAxisVector": {
|
|
"x": 0.24184476264797528,
|
|
"y": 0.24184476264797522,
|
|
"z": 0.9396926207859084
|
|
},
|
|
"canvas": {
|
|
"toolhead": "{\"x\":-0.002,\"y\":0.002,\"z\":0.007}",
|
|
"tcpPose": "{\"x\":-1.694,\"y\":1.694,\"z\":6.581,\"a\":0,\"b\":20,\"c\":45}",
|
|
"toolAxis": "{\"x\":0.242,\"y\":0.242,\"z\":0.94}",
|
|
"executedPathPoints": "0",
|
|
"pathPoints": "1300"
|
|
},
|
|
"frame": "frame-0040.png",
|
|
"captureStartedMs": 1783110134332,
|
|
"captureDurationMs": 127,
|
|
"intervalSincePreviousMs": 150
|
|
},
|
|
{
|
|
"wallClock": "2026-07-03T20:22:14.460Z",
|
|
"perfNow": 7052.60000000149,
|
|
"runState": "running",
|
|
"mode": "auto",
|
|
"interpState": "reading",
|
|
"activeLine": 18,
|
|
"programElapsedSeconds": 0.356,
|
|
"programRemainingSeconds": 61.10500000000001,
|
|
"motionIndex": 1,
|
|
"sampleIndex": 1,
|
|
"programSourceMode": "linuxcnc-machine-file-remap-wasm",
|
|
"executionSourceMode": "linuxcnc-task-motion-hal-wasm",
|
|
"motionCount": 29,
|
|
"message": "task/HAL status tick 138",
|
|
"task": {
|
|
"state": "ON",
|
|
"mode": "AUTO",
|
|
"interpState": "READING",
|
|
"execState": "WAITING_FOR_MOTION",
|
|
"taskPaused": false,
|
|
"singleStepping": false,
|
|
"cycle": 698,
|
|
"openProgram": "/work/sim/axis/vismach/5axis/table-rotary-tilting/xyzbc-trt/demos/xyzbc_switchkins.ngc",
|
|
"openedLineCount": 3,
|
|
"openedSourceLineCount": 44,
|
|
"executableLineCount": 2,
|
|
"nextProgramLine": 17
|
|
},
|
|
"ui": {
|
|
"taskState": "on",
|
|
"taskMode": "auto",
|
|
"interpState": "reading",
|
|
"execState": "waiting_for_motion",
|
|
"taskCycle": 0,
|
|
"servoCycle": 6980,
|
|
"motionQueueDepth": 0,
|
|
"halChangedPinCount": 0,
|
|
"activeLine": 17,
|
|
"motionProgramLine": 17,
|
|
"halProgramLine": 17,
|
|
"activeLineSource": "motion-status",
|
|
"activeLineHalSynced": true,
|
|
"switchkinsType": 0,
|
|
"axisPose": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 6.93779,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"axisPoseFrame": "work",
|
|
"currentVelocity": 1000.002
|
|
},
|
|
"feedback": {
|
|
"apiName": "web-rtcp-5axis-program-runtime-feedback",
|
|
"sourceMode": "linuxcnc-task-motion-hal-wasm",
|
|
"semanticBoundary": "linuxcnc_task_motion_hal_wasm_simulation_runtime",
|
|
"sampleIndex": 1,
|
|
"motionIndex": 1,
|
|
"line": 18,
|
|
"motionProgramLine": 17,
|
|
"halProgramLine": 17,
|
|
"activeLineSource": "motion-status",
|
|
"activeLineHalSynced": true,
|
|
"type": "TASK_MOTION",
|
|
"timeSeconds": 0,
|
|
"axisPose": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 6.93779,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"currentVelocityMmPerMin": 1000.002,
|
|
"requestedVelocityMmPerMin": 1000.002,
|
|
"distanceToGo": 0,
|
|
"dtg": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 0
|
|
},
|
|
"queueDepth": 0,
|
|
"activeDepth": 0,
|
|
"cycle": 6980,
|
|
"taskCycle": 698,
|
|
"halChangedPinCount": 0,
|
|
"sourceFile": "xyzbc_switchkins_sub.ngc",
|
|
"statement": "g0 x+20 y+20 z#<zmax>",
|
|
"motionType": "rapid",
|
|
"activeKinematics": "identity",
|
|
"tcp": {
|
|
"x": -1.6831960159726311,
|
|
"y": 1.683196015972631,
|
|
"z": 6.540091495998181
|
|
},
|
|
"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
|
|
}
|
|
}
|
|
},
|
|
"programUiExecution": {
|
|
"apiName": "web-rtcp-5axis-ui-gcode-live-execution",
|
|
"status": "running",
|
|
"source": "programAxisPreviewPath.samples",
|
|
"samplePeriodMs": 50,
|
|
"sampleIndex": 1,
|
|
"sampleCount": 1300,
|
|
"executedSampleCount": 2,
|
|
"timeMs": 50,
|
|
"activeProgram": "configs/sim/axis/vismach/5axis/table-rotary-tilting/demos/xyzbc_switchkins.ngc",
|
|
"sourceFile": "xyzbc_switchkins_sub.ngc",
|
|
"line": 18,
|
|
"statement": "g0 x+20 y+20 z#<zmax>",
|
|
"operation": "rapid-to-quadrant-center",
|
|
"executionIndex": 4,
|
|
"gcodeStepIndex": 18,
|
|
"segmentIndex": 1,
|
|
"motionType": "rapid",
|
|
"activeKinematics": "identity",
|
|
"joint": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 6.93779,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"tcp": {
|
|
"x": -1.6831960159726311,
|
|
"y": 1.683196015972631,
|
|
"z": 6.540091495998181
|
|
},
|
|
"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"
|
|
},
|
|
"axisPose": {
|
|
"x": -1.6778681758514964,
|
|
"y": 1.677868175851496,
|
|
"z": 6.519390067562267,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"tcpPose": {
|
|
"x": -1.6778681758514964,
|
|
"y": 1.677868175851496,
|
|
"z": 6.519390067562267,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"toolAxisVector": {
|
|
"x": 0.24184476264797528,
|
|
"y": 0.24184476264797522,
|
|
"z": 0.9396926207859084
|
|
},
|
|
"canvas": {
|
|
"toolhead": "{\"x\":-0.002,\"y\":0.002,\"z\":0.007}",
|
|
"tcpPose": "{\"x\":-1.678,\"y\":1.678,\"z\":6.519,\"a\":0,\"b\":20,\"c\":45}",
|
|
"toolAxis": "{\"x\":0.242,\"y\":0.242,\"z\":0.94}",
|
|
"executedPathPoints": "0",
|
|
"pathPoints": "1300"
|
|
},
|
|
"frame": "frame-0041.png",
|
|
"captureStartedMs": 1783110134459,
|
|
"captureDurationMs": 151,
|
|
"intervalSincePreviousMs": 127
|
|
},
|
|
{
|
|
"wallClock": "2026-07-03T20:22:14.614Z",
|
|
"perfNow": 7206.300000000745,
|
|
"runState": "running",
|
|
"mode": "auto",
|
|
"interpState": "reading",
|
|
"activeLine": 18,
|
|
"programElapsedSeconds": 0.356,
|
|
"programRemainingSeconds": 61.10500000000001,
|
|
"motionIndex": 1,
|
|
"sampleIndex": 1,
|
|
"programSourceMode": "linuxcnc-machine-file-remap-wasm",
|
|
"executionSourceMode": "linuxcnc-task-motion-hal-wasm",
|
|
"motionCount": 29,
|
|
"message": "task/HAL status tick 142",
|
|
"task": {
|
|
"state": "ON",
|
|
"mode": "AUTO",
|
|
"interpState": "READING",
|
|
"execState": "WAITING_FOR_MOTION",
|
|
"taskPaused": false,
|
|
"singleStepping": false,
|
|
"cycle": 718,
|
|
"openProgram": "/work/sim/axis/vismach/5axis/table-rotary-tilting/xyzbc-trt/demos/xyzbc_switchkins.ngc",
|
|
"openedLineCount": 3,
|
|
"openedSourceLineCount": 44,
|
|
"executableLineCount": 2,
|
|
"nextProgramLine": 17
|
|
},
|
|
"ui": {
|
|
"taskState": "on",
|
|
"taskMode": "auto",
|
|
"interpState": "reading",
|
|
"execState": "waiting_for_motion",
|
|
"taskCycle": 0,
|
|
"servoCycle": 7180,
|
|
"motionQueueDepth": 0,
|
|
"halChangedPinCount": 0,
|
|
"activeLine": 17,
|
|
"motionProgramLine": 17,
|
|
"halProgramLine": 17,
|
|
"activeLineSource": "motion-status",
|
|
"activeLineHalSynced": true,
|
|
"switchkinsType": 0,
|
|
"axisPose": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 6.84967,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"axisPoseFrame": "work",
|
|
"currentVelocity": 1000.002
|
|
},
|
|
"feedback": {
|
|
"apiName": "web-rtcp-5axis-program-runtime-feedback",
|
|
"sourceMode": "linuxcnc-task-motion-hal-wasm",
|
|
"semanticBoundary": "linuxcnc_task_motion_hal_wasm_simulation_runtime",
|
|
"sampleIndex": 1,
|
|
"motionIndex": 1,
|
|
"line": 18,
|
|
"motionProgramLine": 17,
|
|
"halProgramLine": 17,
|
|
"activeLineSource": "motion-status",
|
|
"activeLineHalSynced": true,
|
|
"type": "TASK_MOTION",
|
|
"timeSeconds": 0,
|
|
"axisPose": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 6.84967,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"currentVelocityMmPerMin": 1000.002,
|
|
"requestedVelocityMmPerMin": 1000.002,
|
|
"distanceToGo": 0,
|
|
"dtg": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 0
|
|
},
|
|
"queueDepth": 0,
|
|
"activeDepth": 0,
|
|
"cycle": 7180,
|
|
"taskCycle": 718,
|
|
"halChangedPinCount": 0,
|
|
"sourceFile": "xyzbc_switchkins_sub.ngc",
|
|
"statement": "g0 x+20 y+20 z#<zmax>",
|
|
"motionType": "rapid",
|
|
"activeKinematics": "identity",
|
|
"tcp": {
|
|
"x": -1.6618846554880917,
|
|
"y": 1.6618846554880913,
|
|
"z": 6.457285782254527
|
|
},
|
|
"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
|
|
}
|
|
}
|
|
},
|
|
"programUiExecution": {
|
|
"apiName": "web-rtcp-5axis-ui-gcode-live-execution",
|
|
"status": "running",
|
|
"source": "programAxisPreviewPath.samples",
|
|
"samplePeriodMs": 50,
|
|
"sampleIndex": 1,
|
|
"sampleCount": 1300,
|
|
"executedSampleCount": 2,
|
|
"timeMs": 50,
|
|
"activeProgram": "configs/sim/axis/vismach/5axis/table-rotary-tilting/demos/xyzbc_switchkins.ngc",
|
|
"sourceFile": "xyzbc_switchkins_sub.ngc",
|
|
"line": 18,
|
|
"statement": "g0 x+20 y+20 z#<zmax>",
|
|
"operation": "rapid-to-quadrant-center",
|
|
"executionIndex": 4,
|
|
"gcodeStepIndex": 18,
|
|
"segmentIndex": 1,
|
|
"motionType": "rapid",
|
|
"activeKinematics": "identity",
|
|
"joint": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 6.84967,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"tcp": {
|
|
"x": -1.6618846554880917,
|
|
"y": 1.6618846554880913,
|
|
"z": 6.457285782254527
|
|
},
|
|
"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"
|
|
},
|
|
"axisPose": {
|
|
"x": -1.6565568153669568,
|
|
"y": 1.6565568153669563,
|
|
"z": 6.436584353818613,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"tcpPose": {
|
|
"x": -1.6565568153669568,
|
|
"y": 1.6565568153669563,
|
|
"z": 6.436584353818613,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"toolAxisVector": {
|
|
"x": 0.24184476264797528,
|
|
"y": 0.24184476264797522,
|
|
"z": 0.9396926207859084
|
|
},
|
|
"canvas": {
|
|
"toolhead": "{\"x\":-0.002,\"y\":0.002,\"z\":0.006}",
|
|
"tcpPose": "{\"x\":-1.657,\"y\":1.657,\"z\":6.437,\"a\":0,\"b\":20,\"c\":45}",
|
|
"toolAxis": "{\"x\":0.242,\"y\":0.242,\"z\":0.94}",
|
|
"executedPathPoints": "0",
|
|
"pathPoints": "1300"
|
|
},
|
|
"frame": "frame-0042.png",
|
|
"captureStartedMs": 1783110134610,
|
|
"captureDurationMs": 112,
|
|
"intervalSincePreviousMs": 151
|
|
},
|
|
{
|
|
"wallClock": "2026-07-03T20:22:14.723Z",
|
|
"perfNow": 7315.400000002235,
|
|
"runState": "running",
|
|
"mode": "auto",
|
|
"interpState": "reading",
|
|
"activeLine": 18,
|
|
"programElapsedSeconds": 0.356,
|
|
"programRemainingSeconds": 61.10500000000001,
|
|
"motionIndex": 1,
|
|
"sampleIndex": 1,
|
|
"programSourceMode": "linuxcnc-machine-file-remap-wasm",
|
|
"executionSourceMode": "linuxcnc-task-motion-hal-wasm",
|
|
"motionCount": 29,
|
|
"message": "task/HAL status tick 145",
|
|
"task": {
|
|
"state": "ON",
|
|
"mode": "AUTO",
|
|
"interpState": "READING",
|
|
"execState": "WAITING_FOR_MOTION",
|
|
"taskPaused": false,
|
|
"singleStepping": false,
|
|
"cycle": 733,
|
|
"openProgram": "/work/sim/axis/vismach/5axis/table-rotary-tilting/xyzbc-trt/demos/xyzbc_switchkins.ngc",
|
|
"openedLineCount": 3,
|
|
"openedSourceLineCount": 44,
|
|
"executableLineCount": 2,
|
|
"nextProgramLine": 17
|
|
},
|
|
"ui": {
|
|
"taskState": "on",
|
|
"taskMode": "auto",
|
|
"interpState": "reading",
|
|
"execState": "waiting_for_motion",
|
|
"taskCycle": 0,
|
|
"servoCycle": 7330,
|
|
"motionQueueDepth": 0,
|
|
"halChangedPinCount": 0,
|
|
"activeLine": 17,
|
|
"motionProgramLine": 17,
|
|
"halProgramLine": 17,
|
|
"activeLineSource": "motion-status",
|
|
"activeLineHalSynced": true,
|
|
"switchkinsType": 0,
|
|
"axisPose": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 6.78357,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"axisPoseFrame": "work",
|
|
"currentVelocity": 1000.002
|
|
},
|
|
"feedback": {
|
|
"apiName": "web-rtcp-5axis-program-runtime-feedback",
|
|
"sourceMode": "linuxcnc-task-motion-hal-wasm",
|
|
"semanticBoundary": "linuxcnc_task_motion_hal_wasm_simulation_runtime",
|
|
"sampleIndex": 1,
|
|
"motionIndex": 1,
|
|
"line": 18,
|
|
"motionProgramLine": 17,
|
|
"halProgramLine": 17,
|
|
"activeLineSource": "motion-status",
|
|
"activeLineHalSynced": true,
|
|
"type": "TASK_MOTION",
|
|
"timeSeconds": 0,
|
|
"axisPose": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 6.78357,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"currentVelocityMmPerMin": 1000.002,
|
|
"requestedVelocityMmPerMin": 1000.002,
|
|
"distanceToGo": 0,
|
|
"dtg": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 0
|
|
},
|
|
"queueDepth": 0,
|
|
"activeDepth": 0,
|
|
"cycle": 7330,
|
|
"taskCycle": 733,
|
|
"halChangedPinCount": 0,
|
|
"sourceFile": "xyzbc_switchkins_sub.ngc",
|
|
"statement": "g0 x+20 y+20 z#<zmax>",
|
|
"motionType": "rapid",
|
|
"activeKinematics": "identity",
|
|
"tcp": {
|
|
"x": -1.6458987166770604,
|
|
"y": 1.6458987166770602,
|
|
"z": 6.395172100020578
|
|
},
|
|
"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
|
|
}
|
|
}
|
|
},
|
|
"programUiExecution": {
|
|
"apiName": "web-rtcp-5axis-ui-gcode-live-execution",
|
|
"status": "running",
|
|
"source": "programAxisPreviewPath.samples",
|
|
"samplePeriodMs": 50,
|
|
"sampleIndex": 1,
|
|
"sampleCount": 1300,
|
|
"executedSampleCount": 2,
|
|
"timeMs": 50,
|
|
"activeProgram": "configs/sim/axis/vismach/5axis/table-rotary-tilting/demos/xyzbc_switchkins.ngc",
|
|
"sourceFile": "xyzbc_switchkins_sub.ngc",
|
|
"line": 18,
|
|
"statement": "g0 x+20 y+20 z#<zmax>",
|
|
"operation": "rapid-to-quadrant-center",
|
|
"executionIndex": 4,
|
|
"gcodeStepIndex": 18,
|
|
"segmentIndex": 1,
|
|
"motionType": "rapid",
|
|
"activeKinematics": "identity",
|
|
"joint": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 6.78357,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"tcp": {
|
|
"x": -1.6458987166770604,
|
|
"y": 1.6458987166770602,
|
|
"z": 6.395172100020578
|
|
},
|
|
"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"
|
|
},
|
|
"axisPose": {
|
|
"x": -1.6405708765559257,
|
|
"y": 1.6405708765559253,
|
|
"z": 6.374470671584665,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"tcpPose": {
|
|
"x": -1.6405708765559257,
|
|
"y": 1.6405708765559253,
|
|
"z": 6.374470671584665,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"toolAxisVector": {
|
|
"x": 0.24184476264797528,
|
|
"y": 0.24184476264797522,
|
|
"z": 0.9396926207859084
|
|
},
|
|
"canvas": {
|
|
"toolhead": "{\"x\":-0.002,\"y\":0.002,\"z\":0.006}",
|
|
"tcpPose": "{\"x\":-1.641,\"y\":1.641,\"z\":6.374,\"a\":0,\"b\":20,\"c\":45}",
|
|
"toolAxis": "{\"x\":0.242,\"y\":0.242,\"z\":0.94}",
|
|
"executedPathPoints": "0",
|
|
"pathPoints": "1300"
|
|
},
|
|
"frame": "frame-0043.png",
|
|
"captureStartedMs": 1783110134722,
|
|
"captureDurationMs": 118,
|
|
"intervalSincePreviousMs": 112
|
|
},
|
|
{
|
|
"wallClock": "2026-07-03T20:22:14.846Z",
|
|
"perfNow": 7438.400000002235,
|
|
"runState": "running",
|
|
"mode": "auto",
|
|
"interpState": "reading",
|
|
"activeLine": 18,
|
|
"programElapsedSeconds": 0.356,
|
|
"programRemainingSeconds": 61.10500000000001,
|
|
"motionIndex": 1,
|
|
"sampleIndex": 1,
|
|
"programSourceMode": "linuxcnc-machine-file-remap-wasm",
|
|
"executionSourceMode": "linuxcnc-task-motion-hal-wasm",
|
|
"motionCount": 29,
|
|
"message": "task/HAL status tick 148",
|
|
"task": {
|
|
"state": "ON",
|
|
"mode": "AUTO",
|
|
"interpState": "READING",
|
|
"execState": "WAITING_FOR_MOTION",
|
|
"taskPaused": false,
|
|
"singleStepping": false,
|
|
"cycle": 748,
|
|
"openProgram": "/work/sim/axis/vismach/5axis/table-rotary-tilting/xyzbc-trt/demos/xyzbc_switchkins.ngc",
|
|
"openedLineCount": 3,
|
|
"openedSourceLineCount": 44,
|
|
"executableLineCount": 2,
|
|
"nextProgramLine": 17
|
|
},
|
|
"ui": {
|
|
"taskState": "on",
|
|
"taskMode": "auto",
|
|
"interpState": "reading",
|
|
"execState": "waiting_for_motion",
|
|
"taskCycle": 0,
|
|
"servoCycle": 7480,
|
|
"motionQueueDepth": 0,
|
|
"halChangedPinCount": 0,
|
|
"activeLine": 17,
|
|
"motionProgramLine": 17,
|
|
"halProgramLine": 17,
|
|
"activeLineSource": "motion-status",
|
|
"activeLineHalSynced": true,
|
|
"switchkinsType": 0,
|
|
"axisPose": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 6.71748,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"axisPoseFrame": "work",
|
|
"currentVelocity": 1000.002
|
|
},
|
|
"feedback": {
|
|
"apiName": "web-rtcp-5axis-program-runtime-feedback",
|
|
"sourceMode": "linuxcnc-task-motion-hal-wasm",
|
|
"semanticBoundary": "linuxcnc_task_motion_hal_wasm_simulation_runtime",
|
|
"sampleIndex": 1,
|
|
"motionIndex": 1,
|
|
"line": 18,
|
|
"motionProgramLine": 17,
|
|
"halProgramLine": 17,
|
|
"activeLineSource": "motion-status",
|
|
"activeLineHalSynced": true,
|
|
"type": "TASK_MOTION",
|
|
"timeSeconds": 0,
|
|
"axisPose": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 6.71748,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"currentVelocityMmPerMin": 1000.002,
|
|
"requestedVelocityMmPerMin": 1000.002,
|
|
"distanceToGo": 0,
|
|
"dtg": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 0
|
|
},
|
|
"queueDepth": 0,
|
|
"activeDepth": 0,
|
|
"cycle": 7480,
|
|
"taskCycle": 748,
|
|
"halChangedPinCount": 0,
|
|
"sourceFile": "xyzbc_switchkins_sub.ngc",
|
|
"statement": "g0 x+20 y+20 z#<zmax>",
|
|
"motionType": "rapid",
|
|
"activeKinematics": "identity",
|
|
"tcp": {
|
|
"x": -1.6299151963136558,
|
|
"y": 1.6299151963136556,
|
|
"z": 6.333067814712837
|
|
},
|
|
"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
|
|
}
|
|
}
|
|
},
|
|
"programUiExecution": {
|
|
"apiName": "web-rtcp-5axis-ui-gcode-live-execution",
|
|
"status": "running",
|
|
"source": "programAxisPreviewPath.samples",
|
|
"samplePeriodMs": 50,
|
|
"sampleIndex": 1,
|
|
"sampleCount": 1300,
|
|
"executedSampleCount": 2,
|
|
"timeMs": 50,
|
|
"activeProgram": "configs/sim/axis/vismach/5axis/table-rotary-tilting/demos/xyzbc_switchkins.ngc",
|
|
"sourceFile": "xyzbc_switchkins_sub.ngc",
|
|
"line": 18,
|
|
"statement": "g0 x+20 y+20 z#<zmax>",
|
|
"operation": "rapid-to-quadrant-center",
|
|
"executionIndex": 4,
|
|
"gcodeStepIndex": 18,
|
|
"segmentIndex": 1,
|
|
"motionType": "rapid",
|
|
"activeKinematics": "identity",
|
|
"joint": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 6.71748,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"tcp": {
|
|
"x": -1.6299151963136558,
|
|
"y": 1.6299151963136556,
|
|
"z": 6.333067814712837
|
|
},
|
|
"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"
|
|
},
|
|
"axisPose": {
|
|
"x": -1.624587356192521,
|
|
"y": 1.6245873561925206,
|
|
"z": 6.312366386276924,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"tcpPose": {
|
|
"x": -1.624587356192521,
|
|
"y": 1.6245873561925206,
|
|
"z": 6.312366386276924,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"toolAxisVector": {
|
|
"x": 0.24184476264797528,
|
|
"y": 0.24184476264797522,
|
|
"z": 0.9396926207859084
|
|
},
|
|
"canvas": {
|
|
"toolhead": "{\"x\":-0.002,\"y\":0.002,\"z\":0.006}",
|
|
"tcpPose": "{\"x\":-1.625,\"y\":1.625,\"z\":6.312,\"a\":0,\"b\":20,\"c\":45}",
|
|
"toolAxis": "{\"x\":0.242,\"y\":0.242,\"z\":0.94}",
|
|
"executedPathPoints": "0",
|
|
"pathPoints": "1300"
|
|
},
|
|
"frame": "frame-0044.png",
|
|
"captureStartedMs": 1783110134840,
|
|
"captureDurationMs": 142,
|
|
"intervalSincePreviousMs": 118
|
|
},
|
|
{
|
|
"wallClock": "2026-07-03T20:22:14.987Z",
|
|
"perfNow": 7579,
|
|
"runState": "running",
|
|
"mode": "auto",
|
|
"interpState": "reading",
|
|
"activeLine": 18,
|
|
"programElapsedSeconds": 0.356,
|
|
"programRemainingSeconds": 61.10500000000001,
|
|
"motionIndex": 1,
|
|
"sampleIndex": 1,
|
|
"programSourceMode": "linuxcnc-machine-file-remap-wasm",
|
|
"executionSourceMode": "linuxcnc-task-motion-hal-wasm",
|
|
"motionCount": 29,
|
|
"message": "task/HAL status tick 152",
|
|
"task": {
|
|
"state": "ON",
|
|
"mode": "AUTO",
|
|
"interpState": "READING",
|
|
"execState": "WAITING_FOR_MOTION",
|
|
"taskPaused": false,
|
|
"singleStepping": false,
|
|
"cycle": 768,
|
|
"openProgram": "/work/sim/axis/vismach/5axis/table-rotary-tilting/xyzbc-trt/demos/xyzbc_switchkins.ngc",
|
|
"openedLineCount": 3,
|
|
"openedSourceLineCount": 44,
|
|
"executableLineCount": 2,
|
|
"nextProgramLine": 17
|
|
},
|
|
"ui": {
|
|
"taskState": "on",
|
|
"taskMode": "auto",
|
|
"interpState": "reading",
|
|
"execState": "waiting_for_motion",
|
|
"taskCycle": 0,
|
|
"servoCycle": 7680,
|
|
"motionQueueDepth": 0,
|
|
"halChangedPinCount": 0,
|
|
"activeLine": 17,
|
|
"motionProgramLine": 17,
|
|
"halProgramLine": 17,
|
|
"activeLineSource": "motion-status",
|
|
"activeLineHalSynced": true,
|
|
"switchkinsType": 0,
|
|
"axisPose": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 6.62936,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"axisPoseFrame": "work",
|
|
"currentVelocity": 1000.002
|
|
},
|
|
"feedback": {
|
|
"apiName": "web-rtcp-5axis-program-runtime-feedback",
|
|
"sourceMode": "linuxcnc-task-motion-hal-wasm",
|
|
"semanticBoundary": "linuxcnc_task_motion_hal_wasm_simulation_runtime",
|
|
"sampleIndex": 1,
|
|
"motionIndex": 1,
|
|
"line": 18,
|
|
"motionProgramLine": 17,
|
|
"halProgramLine": 17,
|
|
"activeLineSource": "motion-status",
|
|
"activeLineHalSynced": true,
|
|
"type": "TASK_MOTION",
|
|
"timeSeconds": 0,
|
|
"axisPose": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 6.62936,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"currentVelocityMmPerMin": 1000.002,
|
|
"requestedVelocityMmPerMin": 1000.002,
|
|
"distanceToGo": 0,
|
|
"dtg": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 0
|
|
},
|
|
"queueDepth": 0,
|
|
"activeDepth": 0,
|
|
"cycle": 7680,
|
|
"taskCycle": 768,
|
|
"halChangedPinCount": 0,
|
|
"sourceFile": "xyzbc_switchkins_sub.ngc",
|
|
"statement": "g0 x+20 y+20 z#<zmax>",
|
|
"motionType": "rapid",
|
|
"activeKinematics": "identity",
|
|
"tcp": {
|
|
"x": -1.6086038358291164,
|
|
"y": 1.608603835829116,
|
|
"z": 6.250262100969183
|
|
},
|
|
"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
|
|
}
|
|
}
|
|
},
|
|
"programUiExecution": {
|
|
"apiName": "web-rtcp-5axis-ui-gcode-live-execution",
|
|
"status": "running",
|
|
"source": "programAxisPreviewPath.samples",
|
|
"samplePeriodMs": 50,
|
|
"sampleIndex": 1,
|
|
"sampleCount": 1300,
|
|
"executedSampleCount": 2,
|
|
"timeMs": 50,
|
|
"activeProgram": "configs/sim/axis/vismach/5axis/table-rotary-tilting/demos/xyzbc_switchkins.ngc",
|
|
"sourceFile": "xyzbc_switchkins_sub.ngc",
|
|
"line": 18,
|
|
"statement": "g0 x+20 y+20 z#<zmax>",
|
|
"operation": "rapid-to-quadrant-center",
|
|
"executionIndex": 4,
|
|
"gcodeStepIndex": 18,
|
|
"segmentIndex": 1,
|
|
"motionType": "rapid",
|
|
"activeKinematics": "identity",
|
|
"joint": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 6.62936,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"tcp": {
|
|
"x": -1.6086038358291164,
|
|
"y": 1.608603835829116,
|
|
"z": 6.250262100969183
|
|
},
|
|
"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"
|
|
},
|
|
"axisPose": {
|
|
"x": -1.6032759957079814,
|
|
"y": 1.603275995707981,
|
|
"z": 6.22956067253327,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"tcpPose": {
|
|
"x": -1.6032759957079814,
|
|
"y": 1.603275995707981,
|
|
"z": 6.22956067253327,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"toolAxisVector": {
|
|
"x": 0.24184476264797528,
|
|
"y": 0.24184476264797522,
|
|
"z": 0.9396926207859084
|
|
},
|
|
"canvas": {
|
|
"toolhead": "{\"x\":-0.002,\"y\":0.002,\"z\":0.006}",
|
|
"tcpPose": "{\"x\":-1.603,\"y\":1.603,\"z\":6.23,\"a\":0,\"b\":20,\"c\":45}",
|
|
"toolAxis": "{\"x\":0.242,\"y\":0.242,\"z\":0.94}",
|
|
"executedPathPoints": "0",
|
|
"pathPoints": "1300"
|
|
},
|
|
"frame": "frame-0045.png",
|
|
"captureStartedMs": 1783110134982,
|
|
"captureDurationMs": 129,
|
|
"intervalSincePreviousMs": 142
|
|
},
|
|
{
|
|
"wallClock": "2026-07-03T20:22:15.123Z",
|
|
"perfNow": 7714.900000002235,
|
|
"runState": "running",
|
|
"mode": "auto",
|
|
"interpState": "reading",
|
|
"activeLine": 18,
|
|
"programElapsedSeconds": 0.356,
|
|
"programRemainingSeconds": 61.10500000000001,
|
|
"motionIndex": 1,
|
|
"sampleIndex": 1,
|
|
"programSourceMode": "linuxcnc-machine-file-remap-wasm",
|
|
"executionSourceMode": "linuxcnc-task-motion-hal-wasm",
|
|
"motionCount": 29,
|
|
"message": "task/HAL status tick 156",
|
|
"task": {
|
|
"state": "ON",
|
|
"mode": "AUTO",
|
|
"interpState": "READING",
|
|
"execState": "WAITING_FOR_MOTION",
|
|
"taskPaused": false,
|
|
"singleStepping": false,
|
|
"cycle": 788,
|
|
"openProgram": "/work/sim/axis/vismach/5axis/table-rotary-tilting/xyzbc-trt/demos/xyzbc_switchkins.ngc",
|
|
"openedLineCount": 3,
|
|
"openedSourceLineCount": 44,
|
|
"executableLineCount": 2,
|
|
"nextProgramLine": 17
|
|
},
|
|
"ui": {
|
|
"taskState": "on",
|
|
"taskMode": "auto",
|
|
"interpState": "reading",
|
|
"execState": "waiting_for_motion",
|
|
"taskCycle": 0,
|
|
"servoCycle": 7880,
|
|
"motionQueueDepth": 0,
|
|
"halChangedPinCount": 0,
|
|
"activeLine": 17,
|
|
"motionProgramLine": 17,
|
|
"halProgramLine": 17,
|
|
"activeLineSource": "motion-status",
|
|
"activeLineHalSynced": true,
|
|
"switchkinsType": 0,
|
|
"axisPose": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 6.54124,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"axisPoseFrame": "work",
|
|
"currentVelocity": 1000.002
|
|
},
|
|
"feedback": {
|
|
"apiName": "web-rtcp-5axis-program-runtime-feedback",
|
|
"sourceMode": "linuxcnc-task-motion-hal-wasm",
|
|
"semanticBoundary": "linuxcnc_task_motion_hal_wasm_simulation_runtime",
|
|
"sampleIndex": 1,
|
|
"motionIndex": 1,
|
|
"line": 18,
|
|
"motionProgramLine": 17,
|
|
"halProgramLine": 17,
|
|
"activeLineSource": "motion-status",
|
|
"activeLineHalSynced": true,
|
|
"type": "TASK_MOTION",
|
|
"timeSeconds": 0,
|
|
"axisPose": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 6.54124,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"currentVelocityMmPerMin": 1000.002,
|
|
"requestedVelocityMmPerMin": 1000.002,
|
|
"distanceToGo": 0,
|
|
"dtg": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 0
|
|
},
|
|
"queueDepth": 0,
|
|
"activeDepth": 0,
|
|
"cycle": 7880,
|
|
"taskCycle": 788,
|
|
"halChangedPinCount": 0,
|
|
"sourceFile": "xyzbc_switchkins_sub.ngc",
|
|
"statement": "g0 x+20 y+20 z#<zmax>",
|
|
"motionType": "rapid",
|
|
"activeKinematics": "identity",
|
|
"tcp": {
|
|
"x": -1.5872924753445767,
|
|
"y": 1.5872924753445763,
|
|
"z": 6.1674563872255295
|
|
},
|
|
"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
|
|
}
|
|
}
|
|
},
|
|
"programUiExecution": {
|
|
"apiName": "web-rtcp-5axis-ui-gcode-live-execution",
|
|
"status": "running",
|
|
"source": "programAxisPreviewPath.samples",
|
|
"samplePeriodMs": 50,
|
|
"sampleIndex": 1,
|
|
"sampleCount": 1300,
|
|
"executedSampleCount": 2,
|
|
"timeMs": 50,
|
|
"activeProgram": "configs/sim/axis/vismach/5axis/table-rotary-tilting/demos/xyzbc_switchkins.ngc",
|
|
"sourceFile": "xyzbc_switchkins_sub.ngc",
|
|
"line": 18,
|
|
"statement": "g0 x+20 y+20 z#<zmax>",
|
|
"operation": "rapid-to-quadrant-center",
|
|
"executionIndex": 4,
|
|
"gcodeStepIndex": 18,
|
|
"segmentIndex": 1,
|
|
"motionType": "rapid",
|
|
"activeKinematics": "identity",
|
|
"joint": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 6.54124,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"tcp": {
|
|
"x": -1.5872924753445767,
|
|
"y": 1.5872924753445763,
|
|
"z": 6.1674563872255295
|
|
},
|
|
"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"
|
|
},
|
|
"axisPose": {
|
|
"x": -1.5819646352234418,
|
|
"y": 1.5819646352234416,
|
|
"z": 6.146754958789616,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"tcpPose": {
|
|
"x": -1.5819646352234418,
|
|
"y": 1.5819646352234416,
|
|
"z": 6.146754958789616,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"toolAxisVector": {
|
|
"x": 0.24184476264797528,
|
|
"y": 0.24184476264797522,
|
|
"z": 0.9396926207859084
|
|
},
|
|
"canvas": {
|
|
"toolhead": "{\"x\":-0.002,\"y\":0.002,\"z\":0.006}",
|
|
"tcpPose": "{\"x\":-1.582,\"y\":1.582,\"z\":6.147,\"a\":0,\"b\":20,\"c\":45}",
|
|
"toolAxis": "{\"x\":0.242,\"y\":0.242,\"z\":0.94}",
|
|
"executedPathPoints": "0",
|
|
"pathPoints": "1300"
|
|
},
|
|
"frame": "frame-0046.png",
|
|
"captureStartedMs": 1783110135111,
|
|
"captureDurationMs": 140,
|
|
"intervalSincePreviousMs": 129
|
|
},
|
|
{
|
|
"wallClock": "2026-07-03T20:22:15.254Z",
|
|
"perfNow": 7845.800000000745,
|
|
"runState": "running",
|
|
"mode": "auto",
|
|
"interpState": "reading",
|
|
"activeLine": 18,
|
|
"programElapsedSeconds": 0.356,
|
|
"programRemainingSeconds": 61.10500000000001,
|
|
"motionIndex": 1,
|
|
"sampleIndex": 1,
|
|
"programSourceMode": "linuxcnc-machine-file-remap-wasm",
|
|
"executionSourceMode": "linuxcnc-task-motion-hal-wasm",
|
|
"motionCount": 29,
|
|
"message": "task/HAL status tick 159",
|
|
"task": {
|
|
"state": "ON",
|
|
"mode": "AUTO",
|
|
"interpState": "READING",
|
|
"execState": "WAITING_FOR_MOTION",
|
|
"taskPaused": false,
|
|
"singleStepping": false,
|
|
"cycle": 803,
|
|
"openProgram": "/work/sim/axis/vismach/5axis/table-rotary-tilting/xyzbc-trt/demos/xyzbc_switchkins.ngc",
|
|
"openedLineCount": 3,
|
|
"openedSourceLineCount": 44,
|
|
"executableLineCount": 2,
|
|
"nextProgramLine": 17
|
|
},
|
|
"ui": {
|
|
"taskState": "on",
|
|
"taskMode": "auto",
|
|
"interpState": "reading",
|
|
"execState": "waiting_for_motion",
|
|
"taskCycle": 0,
|
|
"servoCycle": 8030,
|
|
"motionQueueDepth": 0,
|
|
"halChangedPinCount": 0,
|
|
"activeLine": 17,
|
|
"motionProgramLine": 17,
|
|
"halProgramLine": 17,
|
|
"activeLineSource": "motion-status",
|
|
"activeLineHalSynced": true,
|
|
"switchkinsType": 0,
|
|
"axisPose": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 6.47515,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"axisPoseFrame": "work",
|
|
"currentVelocity": 1000.002
|
|
},
|
|
"feedback": {
|
|
"apiName": "web-rtcp-5axis-program-runtime-feedback",
|
|
"sourceMode": "linuxcnc-task-motion-hal-wasm",
|
|
"semanticBoundary": "linuxcnc_task_motion_hal_wasm_simulation_runtime",
|
|
"sampleIndex": 1,
|
|
"motionIndex": 1,
|
|
"line": 18,
|
|
"motionProgramLine": 17,
|
|
"halProgramLine": 17,
|
|
"activeLineSource": "motion-status",
|
|
"activeLineHalSynced": true,
|
|
"type": "TASK_MOTION",
|
|
"timeSeconds": 0,
|
|
"axisPose": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 6.47515,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"currentVelocityMmPerMin": 1000.002,
|
|
"requestedVelocityMmPerMin": 1000.002,
|
|
"distanceToGo": 0,
|
|
"dtg": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 0
|
|
},
|
|
"queueDepth": 0,
|
|
"activeDepth": 0,
|
|
"cycle": 8030,
|
|
"taskCycle": 803,
|
|
"halChangedPinCount": 0,
|
|
"sourceFile": "xyzbc_switchkins_sub.ngc",
|
|
"statement": "g0 x+20 y+20 z#<zmax>",
|
|
"motionType": "rapid",
|
|
"activeKinematics": "identity",
|
|
"tcp": {
|
|
"x": -1.571308954981172,
|
|
"y": 1.5713089549811716,
|
|
"z": 6.105352101917789
|
|
},
|
|
"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
|
|
}
|
|
}
|
|
},
|
|
"programUiExecution": {
|
|
"apiName": "web-rtcp-5axis-ui-gcode-live-execution",
|
|
"status": "running",
|
|
"source": "programAxisPreviewPath.samples",
|
|
"samplePeriodMs": 50,
|
|
"sampleIndex": 1,
|
|
"sampleCount": 1300,
|
|
"executedSampleCount": 2,
|
|
"timeMs": 50,
|
|
"activeProgram": "configs/sim/axis/vismach/5axis/table-rotary-tilting/demos/xyzbc_switchkins.ngc",
|
|
"sourceFile": "xyzbc_switchkins_sub.ngc",
|
|
"line": 18,
|
|
"statement": "g0 x+20 y+20 z#<zmax>",
|
|
"operation": "rapid-to-quadrant-center",
|
|
"executionIndex": 4,
|
|
"gcodeStepIndex": 18,
|
|
"segmentIndex": 1,
|
|
"motionType": "rapid",
|
|
"activeKinematics": "identity",
|
|
"joint": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 6.47515,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"tcp": {
|
|
"x": -1.571308954981172,
|
|
"y": 1.5713089549811716,
|
|
"z": 6.105352101917789
|
|
},
|
|
"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"
|
|
},
|
|
"axisPose": {
|
|
"x": -1.565981114860037,
|
|
"y": 1.5659811148600369,
|
|
"z": 6.0846506734818755,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"tcpPose": {
|
|
"x": -1.565981114860037,
|
|
"y": 1.5659811148600369,
|
|
"z": 6.0846506734818755,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"toolAxisVector": {
|
|
"x": 0.24184476264797528,
|
|
"y": 0.24184476264797522,
|
|
"z": 0.9396926207859084
|
|
},
|
|
"canvas": {
|
|
"toolhead": "{\"x\":-0.002,\"y\":0.002,\"z\":0.006}",
|
|
"tcpPose": "{\"x\":-1.566,\"y\":1.566,\"z\":6.085,\"a\":0,\"b\":20,\"c\":45}",
|
|
"toolAxis": "{\"x\":0.242,\"y\":0.242,\"z\":0.94}",
|
|
"executedPathPoints": "0",
|
|
"pathPoints": "1300"
|
|
},
|
|
"frame": "frame-0047.png",
|
|
"captureStartedMs": 1783110135251,
|
|
"captureDurationMs": 114,
|
|
"intervalSincePreviousMs": 140
|
|
},
|
|
{
|
|
"wallClock": "2026-07-03T20:22:15.387Z",
|
|
"perfNow": 7979.300000000745,
|
|
"runState": "running",
|
|
"mode": "auto",
|
|
"interpState": "reading",
|
|
"activeLine": 18,
|
|
"programElapsedSeconds": 0.356,
|
|
"programRemainingSeconds": 61.10500000000001,
|
|
"motionIndex": 1,
|
|
"sampleIndex": 1,
|
|
"programSourceMode": "linuxcnc-machine-file-remap-wasm",
|
|
"executionSourceMode": "linuxcnc-task-motion-hal-wasm",
|
|
"motionCount": 29,
|
|
"message": "task/HAL status tick 163",
|
|
"task": {
|
|
"state": "ON",
|
|
"mode": "AUTO",
|
|
"interpState": "READING",
|
|
"execState": "WAITING_FOR_MOTION",
|
|
"taskPaused": false,
|
|
"singleStepping": false,
|
|
"cycle": 823,
|
|
"openProgram": "/work/sim/axis/vismach/5axis/table-rotary-tilting/xyzbc-trt/demos/xyzbc_switchkins.ngc",
|
|
"openedLineCount": 3,
|
|
"openedSourceLineCount": 44,
|
|
"executableLineCount": 2,
|
|
"nextProgramLine": 17
|
|
},
|
|
"ui": {
|
|
"taskState": "on",
|
|
"taskMode": "auto",
|
|
"interpState": "reading",
|
|
"execState": "waiting_for_motion",
|
|
"taskCycle": 0,
|
|
"servoCycle": 8230,
|
|
"motionQueueDepth": 0,
|
|
"halChangedPinCount": 0,
|
|
"activeLine": 17,
|
|
"motionProgramLine": 17,
|
|
"halProgramLine": 17,
|
|
"activeLineSource": "motion-status",
|
|
"activeLineHalSynced": true,
|
|
"switchkinsType": 0,
|
|
"axisPose": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 6.38703,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"axisPoseFrame": "work",
|
|
"currentVelocity": 1000.002
|
|
},
|
|
"feedback": {
|
|
"apiName": "web-rtcp-5axis-program-runtime-feedback",
|
|
"sourceMode": "linuxcnc-task-motion-hal-wasm",
|
|
"semanticBoundary": "linuxcnc_task_motion_hal_wasm_simulation_runtime",
|
|
"sampleIndex": 1,
|
|
"motionIndex": 1,
|
|
"line": 18,
|
|
"motionProgramLine": 17,
|
|
"halProgramLine": 17,
|
|
"activeLineSource": "motion-status",
|
|
"activeLineHalSynced": true,
|
|
"type": "TASK_MOTION",
|
|
"timeSeconds": 0,
|
|
"axisPose": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 6.38703,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"currentVelocityMmPerMin": 1000.002,
|
|
"requestedVelocityMmPerMin": 1000.002,
|
|
"distanceToGo": 0,
|
|
"dtg": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 0
|
|
},
|
|
"queueDepth": 0,
|
|
"activeDepth": 0,
|
|
"cycle": 8230,
|
|
"taskCycle": 823,
|
|
"halChangedPinCount": 0,
|
|
"sourceFile": "xyzbc_switchkins_sub.ngc",
|
|
"statement": "g0 x+20 y+20 z#<zmax>",
|
|
"motionType": "rapid",
|
|
"activeKinematics": "identity",
|
|
"tcp": {
|
|
"x": -1.5499975944966324,
|
|
"y": 1.5499975944966322,
|
|
"z": 6.022546388174135
|
|
},
|
|
"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
|
|
}
|
|
}
|
|
},
|
|
"programUiExecution": {
|
|
"apiName": "web-rtcp-5axis-ui-gcode-live-execution",
|
|
"status": "running",
|
|
"source": "programAxisPreviewPath.samples",
|
|
"samplePeriodMs": 50,
|
|
"sampleIndex": 1,
|
|
"sampleCount": 1300,
|
|
"executedSampleCount": 2,
|
|
"timeMs": 50,
|
|
"activeProgram": "configs/sim/axis/vismach/5axis/table-rotary-tilting/demos/xyzbc_switchkins.ngc",
|
|
"sourceFile": "xyzbc_switchkins_sub.ngc",
|
|
"line": 18,
|
|
"statement": "g0 x+20 y+20 z#<zmax>",
|
|
"operation": "rapid-to-quadrant-center",
|
|
"executionIndex": 4,
|
|
"gcodeStepIndex": 18,
|
|
"segmentIndex": 1,
|
|
"motionType": "rapid",
|
|
"activeKinematics": "identity",
|
|
"joint": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 6.38703,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"tcp": {
|
|
"x": -1.5499975944966324,
|
|
"y": 1.5499975944966322,
|
|
"z": 6.022546388174135
|
|
},
|
|
"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"
|
|
},
|
|
"axisPose": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 6.38703,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"tcpPose": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 6.38703,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"toolAxisVector": {
|
|
"x": 0.24184476264797528,
|
|
"y": 0.24184476264797522,
|
|
"z": 0.9396926207859084
|
|
},
|
|
"canvas": {
|
|
"toolhead": "{\"x\":-0.002,\"y\":0.002,\"z\":0.006}",
|
|
"tcpPose": "{\"x\":0,\"y\":0,\"z\":6.387,\"a\":0,\"b\":20,\"c\":45}",
|
|
"toolAxis": "{\"x\":0.242,\"y\":0.242,\"z\":0.94}",
|
|
"executedPathPoints": "0",
|
|
"pathPoints": "1300"
|
|
},
|
|
"frame": "frame-0048.png",
|
|
"captureStartedMs": 1783110135365,
|
|
"captureDurationMs": 145,
|
|
"intervalSincePreviousMs": 114
|
|
},
|
|
{
|
|
"wallClock": "2026-07-03T20:22:15.520Z",
|
|
"perfNow": 8112.400000002235,
|
|
"runState": "running",
|
|
"mode": "auto",
|
|
"interpState": "reading",
|
|
"activeLine": 18,
|
|
"programElapsedSeconds": 0.356,
|
|
"programRemainingSeconds": 61.10500000000001,
|
|
"motionIndex": 1,
|
|
"sampleIndex": 1,
|
|
"programSourceMode": "linuxcnc-machine-file-remap-wasm",
|
|
"executionSourceMode": "linuxcnc-task-motion-hal-wasm",
|
|
"motionCount": 29,
|
|
"message": "task/HAL status tick 166",
|
|
"task": {
|
|
"state": "ON",
|
|
"mode": "AUTO",
|
|
"interpState": "READING",
|
|
"execState": "WAITING_FOR_MOTION",
|
|
"taskPaused": false,
|
|
"singleStepping": false,
|
|
"cycle": 838,
|
|
"openProgram": "/work/sim/axis/vismach/5axis/table-rotary-tilting/xyzbc-trt/demos/xyzbc_switchkins.ngc",
|
|
"openedLineCount": 3,
|
|
"openedSourceLineCount": 44,
|
|
"executableLineCount": 2,
|
|
"nextProgramLine": 17
|
|
},
|
|
"ui": {
|
|
"taskState": "on",
|
|
"taskMode": "auto",
|
|
"interpState": "reading",
|
|
"execState": "waiting_for_motion",
|
|
"taskCycle": 0,
|
|
"servoCycle": 8380,
|
|
"motionQueueDepth": 0,
|
|
"halChangedPinCount": 0,
|
|
"activeLine": 17,
|
|
"motionProgramLine": 17,
|
|
"halProgramLine": 17,
|
|
"activeLineSource": "motion-status",
|
|
"activeLineHalSynced": true,
|
|
"switchkinsType": 0,
|
|
"axisPose": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 6.32094,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"axisPoseFrame": "work",
|
|
"currentVelocity": 1000.002
|
|
},
|
|
"feedback": {
|
|
"apiName": "web-rtcp-5axis-program-runtime-feedback",
|
|
"sourceMode": "linuxcnc-task-motion-hal-wasm",
|
|
"semanticBoundary": "linuxcnc_task_motion_hal_wasm_simulation_runtime",
|
|
"sampleIndex": 1,
|
|
"motionIndex": 1,
|
|
"line": 18,
|
|
"motionProgramLine": 17,
|
|
"halProgramLine": 17,
|
|
"activeLineSource": "motion-status",
|
|
"activeLineHalSynced": true,
|
|
"type": "TASK_MOTION",
|
|
"timeSeconds": 0,
|
|
"axisPose": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 6.32094,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"currentVelocityMmPerMin": 1000.002,
|
|
"requestedVelocityMmPerMin": 1000.002,
|
|
"distanceToGo": 0,
|
|
"dtg": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 0
|
|
},
|
|
"queueDepth": 0,
|
|
"activeDepth": 0,
|
|
"cycle": 8380,
|
|
"taskCycle": 838,
|
|
"halChangedPinCount": 0,
|
|
"sourceFile": "xyzbc_switchkins_sub.ngc",
|
|
"statement": "g0 x+20 y+20 z#<zmax>",
|
|
"motionType": "rapid",
|
|
"activeKinematics": "identity",
|
|
"tcp": {
|
|
"x": -1.5340140741332278,
|
|
"y": 1.5340140741332273,
|
|
"z": 5.960442102866394
|
|
},
|
|
"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
|
|
}
|
|
}
|
|
},
|
|
"programUiExecution": {
|
|
"apiName": "web-rtcp-5axis-ui-gcode-live-execution",
|
|
"status": "running",
|
|
"source": "programAxisPreviewPath.samples",
|
|
"samplePeriodMs": 50,
|
|
"sampleIndex": 1,
|
|
"sampleCount": 1300,
|
|
"executedSampleCount": 2,
|
|
"timeMs": 50,
|
|
"activeProgram": "configs/sim/axis/vismach/5axis/table-rotary-tilting/demos/xyzbc_switchkins.ngc",
|
|
"sourceFile": "xyzbc_switchkins_sub.ngc",
|
|
"line": 18,
|
|
"statement": "g0 x+20 y+20 z#<zmax>",
|
|
"operation": "rapid-to-quadrant-center",
|
|
"executionIndex": 4,
|
|
"gcodeStepIndex": 18,
|
|
"segmentIndex": 1,
|
|
"motionType": "rapid",
|
|
"activeKinematics": "identity",
|
|
"joint": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 6.32094,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"tcp": {
|
|
"x": -1.5340140741332278,
|
|
"y": 1.5340140741332273,
|
|
"z": 5.960442102866394
|
|
},
|
|
"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"
|
|
},
|
|
"axisPose": {
|
|
"x": -1.5286862340120928,
|
|
"y": 1.5286862340120926,
|
|
"z": 5.93974067443048,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"tcpPose": {
|
|
"x": -1.5286862340120928,
|
|
"y": 1.5286862340120926,
|
|
"z": 5.93974067443048,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"toolAxisVector": {
|
|
"x": 0.24184476264797528,
|
|
"y": 0.24184476264797522,
|
|
"z": 0.9396926207859084
|
|
},
|
|
"canvas": {
|
|
"toolhead": "{\"x\":-0.002,\"y\":0.002,\"z\":0.006}",
|
|
"tcpPose": "{\"x\":-1.529,\"y\":1.529,\"z\":5.94,\"a\":0,\"b\":20,\"c\":45}",
|
|
"toolAxis": "{\"x\":0.242,\"y\":0.242,\"z\":0.94}",
|
|
"executedPathPoints": "0",
|
|
"pathPoints": "1300"
|
|
},
|
|
"frame": "frame-0049.png",
|
|
"captureStartedMs": 1783110135510,
|
|
"captureDurationMs": 85,
|
|
"intervalSincePreviousMs": 145
|
|
},
|
|
{
|
|
"wallClock": "2026-07-03T20:22:15.596Z",
|
|
"perfNow": 8188.300000000745,
|
|
"runState": "running",
|
|
"mode": "auto",
|
|
"interpState": "reading",
|
|
"activeLine": 18,
|
|
"programElapsedSeconds": 0.356,
|
|
"programRemainingSeconds": 61.10500000000001,
|
|
"motionIndex": 1,
|
|
"sampleIndex": 1,
|
|
"programSourceMode": "linuxcnc-machine-file-remap-wasm",
|
|
"executionSourceMode": "linuxcnc-task-motion-hal-wasm",
|
|
"motionCount": 29,
|
|
"message": "task/HAL status tick 168",
|
|
"task": {
|
|
"state": "ON",
|
|
"mode": "AUTO",
|
|
"interpState": "READING",
|
|
"execState": "WAITING_FOR_MOTION",
|
|
"taskPaused": false,
|
|
"singleStepping": false,
|
|
"cycle": 848,
|
|
"openProgram": "/work/sim/axis/vismach/5axis/table-rotary-tilting/xyzbc-trt/demos/xyzbc_switchkins.ngc",
|
|
"openedLineCount": 3,
|
|
"openedSourceLineCount": 44,
|
|
"executableLineCount": 2,
|
|
"nextProgramLine": 17
|
|
},
|
|
"ui": {
|
|
"taskState": "on",
|
|
"taskMode": "auto",
|
|
"interpState": "reading",
|
|
"execState": "waiting_for_motion",
|
|
"taskCycle": 0,
|
|
"servoCycle": 8480,
|
|
"motionQueueDepth": 0,
|
|
"halChangedPinCount": 0,
|
|
"activeLine": 17,
|
|
"motionProgramLine": 17,
|
|
"halProgramLine": 17,
|
|
"activeLineSource": "motion-status",
|
|
"activeLineHalSynced": true,
|
|
"switchkinsType": 0,
|
|
"axisPose": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 6.27688,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"axisPoseFrame": "work",
|
|
"currentVelocity": 1000.002
|
|
},
|
|
"feedback": {
|
|
"apiName": "web-rtcp-5axis-program-runtime-feedback",
|
|
"sourceMode": "linuxcnc-task-motion-hal-wasm",
|
|
"semanticBoundary": "linuxcnc_task_motion_hal_wasm_simulation_runtime",
|
|
"sampleIndex": 1,
|
|
"motionIndex": 1,
|
|
"line": 18,
|
|
"motionProgramLine": 17,
|
|
"halProgramLine": 17,
|
|
"activeLineSource": "motion-status",
|
|
"activeLineHalSynced": true,
|
|
"type": "TASK_MOTION",
|
|
"timeSeconds": 0,
|
|
"axisPose": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 6.27688,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"currentVelocityMmPerMin": 1000.002,
|
|
"requestedVelocityMmPerMin": 1000.002,
|
|
"distanceToGo": 0,
|
|
"dtg": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 0
|
|
},
|
|
"queueDepth": 0,
|
|
"activeDepth": 0,
|
|
"cycle": 8480,
|
|
"taskCycle": 848,
|
|
"halChangedPinCount": 0,
|
|
"sourceFile": "xyzbc_switchkins_sub.ngc",
|
|
"statement": "g0 x+20 y+20 z#<zmax>",
|
|
"motionType": "rapid",
|
|
"activeKinematics": "identity",
|
|
"tcp": {
|
|
"x": -1.523358393890958,
|
|
"y": 1.5233583938909576,
|
|
"z": 5.919039245994567
|
|
},
|
|
"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
|
|
}
|
|
}
|
|
},
|
|
"programUiExecution": {
|
|
"apiName": "web-rtcp-5axis-ui-gcode-live-execution",
|
|
"status": "running",
|
|
"source": "programAxisPreviewPath.samples",
|
|
"samplePeriodMs": 50,
|
|
"sampleIndex": 1,
|
|
"sampleCount": 1300,
|
|
"executedSampleCount": 2,
|
|
"timeMs": 50,
|
|
"activeProgram": "configs/sim/axis/vismach/5axis/table-rotary-tilting/demos/xyzbc_switchkins.ngc",
|
|
"sourceFile": "xyzbc_switchkins_sub.ngc",
|
|
"line": 18,
|
|
"statement": "g0 x+20 y+20 z#<zmax>",
|
|
"operation": "rapid-to-quadrant-center",
|
|
"executionIndex": 4,
|
|
"gcodeStepIndex": 18,
|
|
"segmentIndex": 1,
|
|
"motionType": "rapid",
|
|
"activeKinematics": "identity",
|
|
"joint": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 6.27688,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"tcp": {
|
|
"x": -1.523358393890958,
|
|
"y": 1.5233583938909576,
|
|
"z": 5.919039245994567
|
|
},
|
|
"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"
|
|
},
|
|
"axisPose": {
|
|
"x": -1.518030553769823,
|
|
"y": 1.5180305537698227,
|
|
"z": 5.898337817558653,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"tcpPose": {
|
|
"x": -1.518030553769823,
|
|
"y": 1.5180305537698227,
|
|
"z": 5.898337817558653,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"toolAxisVector": {
|
|
"x": 0.24184476264797528,
|
|
"y": 0.24184476264797522,
|
|
"z": 0.9396926207859084
|
|
},
|
|
"canvas": {
|
|
"toolhead": "{\"x\":-0.002,\"y\":0.002,\"z\":0.006}",
|
|
"tcpPose": "{\"x\":-1.518,\"y\":1.518,\"z\":5.898,\"a\":0,\"b\":20,\"c\":45}",
|
|
"toolAxis": "{\"x\":0.242,\"y\":0.242,\"z\":0.94}",
|
|
"executedPathPoints": "0",
|
|
"pathPoints": "1300"
|
|
},
|
|
"frame": "frame-0050.png",
|
|
"captureStartedMs": 1783110135595,
|
|
"captureDurationMs": 132,
|
|
"intervalSincePreviousMs": 85
|
|
},
|
|
{
|
|
"wallClock": "2026-07-03T20:22:15.734Z",
|
|
"perfNow": 8326.60000000149,
|
|
"runState": "running",
|
|
"mode": "auto",
|
|
"interpState": "reading",
|
|
"activeLine": 18,
|
|
"programElapsedSeconds": 0.356,
|
|
"programRemainingSeconds": 61.10500000000001,
|
|
"motionIndex": 1,
|
|
"sampleIndex": 1,
|
|
"programSourceMode": "linuxcnc-machine-file-remap-wasm",
|
|
"executionSourceMode": "linuxcnc-task-motion-hal-wasm",
|
|
"motionCount": 29,
|
|
"message": "task/HAL status tick 172",
|
|
"task": {
|
|
"state": "ON",
|
|
"mode": "AUTO",
|
|
"interpState": "READING",
|
|
"execState": "WAITING_FOR_MOTION",
|
|
"taskPaused": false,
|
|
"singleStepping": false,
|
|
"cycle": 868,
|
|
"openProgram": "/work/sim/axis/vismach/5axis/table-rotary-tilting/xyzbc-trt/demos/xyzbc_switchkins.ngc",
|
|
"openedLineCount": 3,
|
|
"openedSourceLineCount": 44,
|
|
"executableLineCount": 2,
|
|
"nextProgramLine": 17
|
|
},
|
|
"ui": {
|
|
"taskState": "on",
|
|
"taskMode": "auto",
|
|
"interpState": "reading",
|
|
"execState": "waiting_for_motion",
|
|
"taskCycle": 0,
|
|
"servoCycle": 8680,
|
|
"motionQueueDepth": 0,
|
|
"halChangedPinCount": 0,
|
|
"activeLine": 17,
|
|
"motionProgramLine": 17,
|
|
"halProgramLine": 17,
|
|
"activeLineSource": "motion-status",
|
|
"activeLineHalSynced": true,
|
|
"switchkinsType": 0,
|
|
"axisPose": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 6.18876,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"axisPoseFrame": "work",
|
|
"currentVelocity": 1000.002
|
|
},
|
|
"feedback": {
|
|
"apiName": "web-rtcp-5axis-program-runtime-feedback",
|
|
"sourceMode": "linuxcnc-task-motion-hal-wasm",
|
|
"semanticBoundary": "linuxcnc_task_motion_hal_wasm_simulation_runtime",
|
|
"sampleIndex": 1,
|
|
"motionIndex": 1,
|
|
"line": 18,
|
|
"motionProgramLine": 17,
|
|
"halProgramLine": 17,
|
|
"activeLineSource": "motion-status",
|
|
"activeLineHalSynced": true,
|
|
"type": "TASK_MOTION",
|
|
"timeSeconds": 0,
|
|
"axisPose": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 6.18876,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"currentVelocityMmPerMin": 1000.002,
|
|
"requestedVelocityMmPerMin": 1000.002,
|
|
"distanceToGo": 0,
|
|
"dtg": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 0
|
|
},
|
|
"queueDepth": 0,
|
|
"activeDepth": 0,
|
|
"cycle": 8680,
|
|
"taskCycle": 868,
|
|
"halChangedPinCount": 0,
|
|
"sourceFile": "xyzbc_switchkins_sub.ngc",
|
|
"statement": "g0 x+20 y+20 z#<zmax>",
|
|
"motionType": "rapid",
|
|
"activeKinematics": "identity",
|
|
"tcp": {
|
|
"x": -1.5020470334064184,
|
|
"y": 1.502047033406418,
|
|
"z": 5.836233532250913
|
|
},
|
|
"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
|
|
}
|
|
}
|
|
},
|
|
"programUiExecution": {
|
|
"apiName": "web-rtcp-5axis-ui-gcode-live-execution",
|
|
"status": "running",
|
|
"source": "programAxisPreviewPath.samples",
|
|
"samplePeriodMs": 50,
|
|
"sampleIndex": 1,
|
|
"sampleCount": 1300,
|
|
"executedSampleCount": 2,
|
|
"timeMs": 50,
|
|
"activeProgram": "configs/sim/axis/vismach/5axis/table-rotary-tilting/demos/xyzbc_switchkins.ngc",
|
|
"sourceFile": "xyzbc_switchkins_sub.ngc",
|
|
"line": 18,
|
|
"statement": "g0 x+20 y+20 z#<zmax>",
|
|
"operation": "rapid-to-quadrant-center",
|
|
"executionIndex": 4,
|
|
"gcodeStepIndex": 18,
|
|
"segmentIndex": 1,
|
|
"motionType": "rapid",
|
|
"activeKinematics": "identity",
|
|
"joint": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 6.18876,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"tcp": {
|
|
"x": -1.5020470334064184,
|
|
"y": 1.502047033406418,
|
|
"z": 5.836233532250913
|
|
},
|
|
"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"
|
|
},
|
|
"axisPose": {
|
|
"x": -1.4967191932852835,
|
|
"y": 1.4967191932852832,
|
|
"z": 5.8155321038149985,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"tcpPose": {
|
|
"x": -1.4967191932852835,
|
|
"y": 1.4967191932852832,
|
|
"z": 5.8155321038149985,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"toolAxisVector": {
|
|
"x": 0.24184476264797528,
|
|
"y": 0.24184476264797522,
|
|
"z": 0.9396926207859084
|
|
},
|
|
"canvas": {
|
|
"toolhead": "{\"x\":-0.002,\"y\":0.002,\"z\":0.006}",
|
|
"tcpPose": "{\"x\":-1.497,\"y\":1.497,\"z\":5.816,\"a\":0,\"b\":20,\"c\":45}",
|
|
"toolAxis": "{\"x\":0.242,\"y\":0.242,\"z\":0.94}",
|
|
"executedPathPoints": "0",
|
|
"pathPoints": "1300"
|
|
},
|
|
"frame": "frame-0051.png",
|
|
"captureStartedMs": 1783110135727,
|
|
"captureDurationMs": 116,
|
|
"intervalSincePreviousMs": 132
|
|
},
|
|
{
|
|
"wallClock": "2026-07-03T20:22:15.844Z",
|
|
"perfNow": 8436.10000000149,
|
|
"runState": "running",
|
|
"mode": "auto",
|
|
"interpState": "reading",
|
|
"activeLine": 18,
|
|
"programElapsedSeconds": 0.356,
|
|
"programRemainingSeconds": 61.10500000000001,
|
|
"motionIndex": 1,
|
|
"sampleIndex": 1,
|
|
"programSourceMode": "linuxcnc-machine-file-remap-wasm",
|
|
"executionSourceMode": "linuxcnc-task-motion-hal-wasm",
|
|
"motionCount": 29,
|
|
"message": "task/HAL status tick 175",
|
|
"task": {
|
|
"state": "ON",
|
|
"mode": "AUTO",
|
|
"interpState": "READING",
|
|
"execState": "WAITING_FOR_MOTION",
|
|
"taskPaused": false,
|
|
"singleStepping": false,
|
|
"cycle": 883,
|
|
"openProgram": "/work/sim/axis/vismach/5axis/table-rotary-tilting/xyzbc-trt/demos/xyzbc_switchkins.ngc",
|
|
"openedLineCount": 3,
|
|
"openedSourceLineCount": 44,
|
|
"executableLineCount": 2,
|
|
"nextProgramLine": 17
|
|
},
|
|
"ui": {
|
|
"taskState": "on",
|
|
"taskMode": "auto",
|
|
"interpState": "reading",
|
|
"execState": "waiting_for_motion",
|
|
"taskCycle": 0,
|
|
"servoCycle": 8830,
|
|
"motionQueueDepth": 0,
|
|
"halChangedPinCount": 0,
|
|
"activeLine": 17,
|
|
"motionProgramLine": 17,
|
|
"halProgramLine": 17,
|
|
"activeLineSource": "motion-status",
|
|
"activeLineHalSynced": true,
|
|
"switchkinsType": 0,
|
|
"axisPose": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 6.12266,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"axisPoseFrame": "work",
|
|
"currentVelocity": 1000.002
|
|
},
|
|
"feedback": {
|
|
"apiName": "web-rtcp-5axis-program-runtime-feedback",
|
|
"sourceMode": "linuxcnc-task-motion-hal-wasm",
|
|
"semanticBoundary": "linuxcnc_task_motion_hal_wasm_simulation_runtime",
|
|
"sampleIndex": 1,
|
|
"motionIndex": 1,
|
|
"line": 18,
|
|
"motionProgramLine": 17,
|
|
"halProgramLine": 17,
|
|
"activeLineSource": "motion-status",
|
|
"activeLineHalSynced": true,
|
|
"type": "TASK_MOTION",
|
|
"timeSeconds": 0,
|
|
"axisPose": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 6.12266,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"currentVelocityMmPerMin": 1000.002,
|
|
"requestedVelocityMmPerMin": 1000.002,
|
|
"distanceToGo": 0,
|
|
"dtg": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 0
|
|
},
|
|
"queueDepth": 0,
|
|
"activeDepth": 0,
|
|
"cycle": 8830,
|
|
"taskCycle": 883,
|
|
"halChangedPinCount": 0,
|
|
"sourceFile": "xyzbc_switchkins_sub.ngc",
|
|
"statement": "g0 x+20 y+20 z#<zmax>",
|
|
"motionType": "rapid",
|
|
"activeKinematics": "identity",
|
|
"tcp": {
|
|
"x": -1.4860635130430138,
|
|
"y": 1.4860635130430133,
|
|
"z": 5.774129246943172
|
|
},
|
|
"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
|
|
}
|
|
}
|
|
},
|
|
"programUiExecution": {
|
|
"apiName": "web-rtcp-5axis-ui-gcode-live-execution",
|
|
"status": "running",
|
|
"source": "programAxisPreviewPath.samples",
|
|
"samplePeriodMs": 50,
|
|
"sampleIndex": 1,
|
|
"sampleCount": 1300,
|
|
"executedSampleCount": 2,
|
|
"timeMs": 50,
|
|
"activeProgram": "configs/sim/axis/vismach/5axis/table-rotary-tilting/demos/xyzbc_switchkins.ngc",
|
|
"sourceFile": "xyzbc_switchkins_sub.ngc",
|
|
"line": 18,
|
|
"statement": "g0 x+20 y+20 z#<zmax>",
|
|
"operation": "rapid-to-quadrant-center",
|
|
"executionIndex": 4,
|
|
"gcodeStepIndex": 18,
|
|
"segmentIndex": 1,
|
|
"motionType": "rapid",
|
|
"activeKinematics": "identity",
|
|
"joint": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 6.12266,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"tcp": {
|
|
"x": -1.4860635130430138,
|
|
"y": 1.4860635130430133,
|
|
"z": 5.774129246943172
|
|
},
|
|
"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"
|
|
},
|
|
"axisPose": {
|
|
"x": -1.4807332544742522,
|
|
"y": 1.480733254474252,
|
|
"z": 5.75341842158105,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"tcpPose": {
|
|
"x": -1.4807332544742522,
|
|
"y": 1.480733254474252,
|
|
"z": 5.75341842158105,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"toolAxisVector": {
|
|
"x": 0.24184476264797528,
|
|
"y": 0.24184476264797522,
|
|
"z": 0.9396926207859084
|
|
},
|
|
"canvas": {
|
|
"toolhead": "{\"x\":-0.001,\"y\":0.001,\"z\":0.006}",
|
|
"tcpPose": "{\"x\":-1.481,\"y\":1.481,\"z\":5.753,\"a\":0,\"b\":20,\"c\":45}",
|
|
"toolAxis": "{\"x\":0.242,\"y\":0.242,\"z\":0.94}",
|
|
"executedPathPoints": "0",
|
|
"pathPoints": "1300"
|
|
},
|
|
"frame": "frame-0052.png",
|
|
"captureStartedMs": 1783110135843,
|
|
"captureDurationMs": 115,
|
|
"intervalSincePreviousMs": 116
|
|
},
|
|
{
|
|
"wallClock": "2026-07-03T20:22:15.959Z",
|
|
"perfNow": 8551.60000000149,
|
|
"runState": "running",
|
|
"mode": "auto",
|
|
"interpState": "reading",
|
|
"activeLine": 18,
|
|
"programElapsedSeconds": 0.356,
|
|
"programRemainingSeconds": 61.10500000000001,
|
|
"motionIndex": 1,
|
|
"sampleIndex": 1,
|
|
"programSourceMode": "linuxcnc-machine-file-remap-wasm",
|
|
"executionSourceMode": "linuxcnc-task-motion-hal-wasm",
|
|
"motionCount": 29,
|
|
"message": "task/HAL status tick 178",
|
|
"task": {
|
|
"state": "ON",
|
|
"mode": "AUTO",
|
|
"interpState": "READING",
|
|
"execState": "WAITING_FOR_MOTION",
|
|
"taskPaused": false,
|
|
"singleStepping": false,
|
|
"cycle": 898,
|
|
"openProgram": "/work/sim/axis/vismach/5axis/table-rotary-tilting/xyzbc-trt/demos/xyzbc_switchkins.ngc",
|
|
"openedLineCount": 3,
|
|
"openedSourceLineCount": 44,
|
|
"executableLineCount": 2,
|
|
"nextProgramLine": 17
|
|
},
|
|
"ui": {
|
|
"taskState": "on",
|
|
"taskMode": "auto",
|
|
"interpState": "reading",
|
|
"execState": "waiting_for_motion",
|
|
"taskCycle": 0,
|
|
"servoCycle": 8980,
|
|
"motionQueueDepth": 0,
|
|
"halChangedPinCount": 0,
|
|
"activeLine": 17,
|
|
"motionProgramLine": 17,
|
|
"halProgramLine": 17,
|
|
"activeLineSource": "motion-status",
|
|
"activeLineHalSynced": true,
|
|
"switchkinsType": 0,
|
|
"axisPose": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 6.05657,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"axisPoseFrame": "work",
|
|
"currentVelocity": 1000.002
|
|
},
|
|
"feedback": {
|
|
"apiName": "web-rtcp-5axis-program-runtime-feedback",
|
|
"sourceMode": "linuxcnc-task-motion-hal-wasm",
|
|
"semanticBoundary": "linuxcnc_task_motion_hal_wasm_simulation_runtime",
|
|
"sampleIndex": 1,
|
|
"motionIndex": 1,
|
|
"line": 18,
|
|
"motionProgramLine": 17,
|
|
"halProgramLine": 17,
|
|
"activeLineSource": "motion-status",
|
|
"activeLineHalSynced": true,
|
|
"type": "TASK_MOTION",
|
|
"timeSeconds": 0,
|
|
"axisPose": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 6.05657,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"currentVelocityMmPerMin": 1000.002,
|
|
"requestedVelocityMmPerMin": 1000.002,
|
|
"distanceToGo": 0,
|
|
"dtg": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 0
|
|
},
|
|
"queueDepth": 0,
|
|
"activeDepth": 0,
|
|
"cycle": 8980,
|
|
"taskCycle": 898,
|
|
"halChangedPinCount": 0,
|
|
"sourceFile": "xyzbc_switchkins_sub.ngc",
|
|
"statement": "g0 x+20 y+20 z#<zmax>",
|
|
"motionType": "rapid",
|
|
"activeKinematics": "identity",
|
|
"tcp": {
|
|
"x": -1.4700775742319825,
|
|
"y": 1.470077574231982,
|
|
"z": 5.712015564709223
|
|
},
|
|
"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
|
|
}
|
|
}
|
|
},
|
|
"programUiExecution": {
|
|
"apiName": "web-rtcp-5axis-ui-gcode-live-execution",
|
|
"status": "running",
|
|
"source": "programAxisPreviewPath.samples",
|
|
"samplePeriodMs": 50,
|
|
"sampleIndex": 1,
|
|
"sampleCount": 1300,
|
|
"executedSampleCount": 2,
|
|
"timeMs": 50,
|
|
"activeProgram": "configs/sim/axis/vismach/5axis/table-rotary-tilting/demos/xyzbc_switchkins.ngc",
|
|
"sourceFile": "xyzbc_switchkins_sub.ngc",
|
|
"line": 18,
|
|
"statement": "g0 x+20 y+20 z#<zmax>",
|
|
"operation": "rapid-to-quadrant-center",
|
|
"executionIndex": 4,
|
|
"gcodeStepIndex": 18,
|
|
"segmentIndex": 1,
|
|
"motionType": "rapid",
|
|
"activeKinematics": "identity",
|
|
"joint": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 6.05657,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"tcp": {
|
|
"x": -1.4700775742319825,
|
|
"y": 1.470077574231982,
|
|
"z": 5.712015564709223
|
|
},
|
|
"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"
|
|
},
|
|
"axisPose": {
|
|
"x": -1.4647497341108475,
|
|
"y": 1.4647497341108473,
|
|
"z": 5.691314136273309,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"tcpPose": {
|
|
"x": -1.4647497341108475,
|
|
"y": 1.4647497341108473,
|
|
"z": 5.691314136273309,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"toolAxisVector": {
|
|
"x": 0.24184476264797528,
|
|
"y": 0.24184476264797522,
|
|
"z": 0.9396926207859084
|
|
},
|
|
"canvas": {
|
|
"toolhead": "{\"x\":-0.001,\"y\":0.001,\"z\":0.006}",
|
|
"tcpPose": "{\"x\":-1.465,\"y\":1.465,\"z\":5.691,\"a\":0,\"b\":20,\"c\":45}",
|
|
"toolAxis": "{\"x\":0.242,\"y\":0.242,\"z\":0.94}",
|
|
"executedPathPoints": "0",
|
|
"pathPoints": "1300"
|
|
},
|
|
"frame": "frame-0053.png",
|
|
"captureStartedMs": 1783110135958,
|
|
"captureDurationMs": 145,
|
|
"intervalSincePreviousMs": 115
|
|
},
|
|
{
|
|
"wallClock": "2026-07-03T20:22:16.113Z",
|
|
"perfNow": 8705.300000000745,
|
|
"runState": "running",
|
|
"mode": "auto",
|
|
"interpState": "reading",
|
|
"activeLine": 18,
|
|
"programElapsedSeconds": 0.356,
|
|
"programRemainingSeconds": 61.10500000000001,
|
|
"motionIndex": 1,
|
|
"sampleIndex": 1,
|
|
"programSourceMode": "linuxcnc-machine-file-remap-wasm",
|
|
"executionSourceMode": "linuxcnc-task-motion-hal-wasm",
|
|
"motionCount": 29,
|
|
"message": "task/HAL status tick 182",
|
|
"task": {
|
|
"state": "ON",
|
|
"mode": "AUTO",
|
|
"interpState": "READING",
|
|
"execState": "WAITING_FOR_MOTION",
|
|
"taskPaused": false,
|
|
"singleStepping": false,
|
|
"cycle": 918,
|
|
"openProgram": "/work/sim/axis/vismach/5axis/table-rotary-tilting/xyzbc-trt/demos/xyzbc_switchkins.ngc",
|
|
"openedLineCount": 3,
|
|
"openedSourceLineCount": 44,
|
|
"executableLineCount": 2,
|
|
"nextProgramLine": 17
|
|
},
|
|
"ui": {
|
|
"taskState": "on",
|
|
"taskMode": "auto",
|
|
"interpState": "reading",
|
|
"execState": "waiting_for_motion",
|
|
"taskCycle": 0,
|
|
"servoCycle": 9180,
|
|
"motionQueueDepth": 0,
|
|
"halChangedPinCount": 0,
|
|
"activeLine": 17,
|
|
"motionProgramLine": 17,
|
|
"halProgramLine": 17,
|
|
"activeLineSource": "motion-status",
|
|
"activeLineHalSynced": true,
|
|
"switchkinsType": 0,
|
|
"axisPose": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 5.96845,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"axisPoseFrame": "work",
|
|
"currentVelocity": 1000.002
|
|
},
|
|
"feedback": {
|
|
"apiName": "web-rtcp-5axis-program-runtime-feedback",
|
|
"sourceMode": "linuxcnc-task-motion-hal-wasm",
|
|
"semanticBoundary": "linuxcnc_task_motion_hal_wasm_simulation_runtime",
|
|
"sampleIndex": 1,
|
|
"motionIndex": 1,
|
|
"line": 18,
|
|
"motionProgramLine": 17,
|
|
"halProgramLine": 17,
|
|
"activeLineSource": "motion-status",
|
|
"activeLineHalSynced": true,
|
|
"type": "TASK_MOTION",
|
|
"timeSeconds": 0,
|
|
"axisPose": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 5.96845,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"currentVelocityMmPerMin": 1000.002,
|
|
"requestedVelocityMmPerMin": 1000.002,
|
|
"distanceToGo": 0,
|
|
"dtg": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 0
|
|
},
|
|
"queueDepth": 0,
|
|
"activeDepth": 0,
|
|
"cycle": 9180,
|
|
"taskCycle": 918,
|
|
"halChangedPinCount": 0,
|
|
"sourceFile": "xyzbc_switchkins_sub.ngc",
|
|
"statement": "g0 x+20 y+20 z#<zmax>",
|
|
"motionType": "rapid",
|
|
"activeKinematics": "identity",
|
|
"tcp": {
|
|
"x": -1.4487662137474429,
|
|
"y": 1.4487662137474426,
|
|
"z": 5.629209850965569
|
|
},
|
|
"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
|
|
}
|
|
}
|
|
},
|
|
"programUiExecution": {
|
|
"apiName": "web-rtcp-5axis-ui-gcode-live-execution",
|
|
"status": "running",
|
|
"source": "programAxisPreviewPath.samples",
|
|
"samplePeriodMs": 50,
|
|
"sampleIndex": 1,
|
|
"sampleCount": 1300,
|
|
"executedSampleCount": 2,
|
|
"timeMs": 50,
|
|
"activeProgram": "configs/sim/axis/vismach/5axis/table-rotary-tilting/demos/xyzbc_switchkins.ngc",
|
|
"sourceFile": "xyzbc_switchkins_sub.ngc",
|
|
"line": 18,
|
|
"statement": "g0 x+20 y+20 z#<zmax>",
|
|
"operation": "rapid-to-quadrant-center",
|
|
"executionIndex": 4,
|
|
"gcodeStepIndex": 18,
|
|
"segmentIndex": 1,
|
|
"motionType": "rapid",
|
|
"activeKinematics": "identity",
|
|
"joint": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 5.96845,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"tcp": {
|
|
"x": -1.4487662137474429,
|
|
"y": 1.4487662137474426,
|
|
"z": 5.629209850965569
|
|
},
|
|
"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"
|
|
},
|
|
"axisPose": {
|
|
"x": -1.443438373626308,
|
|
"y": 1.4434383736263077,
|
|
"z": 5.608508422529655,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"tcpPose": {
|
|
"x": -1.443438373626308,
|
|
"y": 1.4434383736263077,
|
|
"z": 5.608508422529655,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"toolAxisVector": {
|
|
"x": 0.24184476264797528,
|
|
"y": 0.24184476264797522,
|
|
"z": 0.9396926207859084
|
|
},
|
|
"canvas": {
|
|
"toolhead": "{\"x\":-0.001,\"y\":0.001,\"z\":0.006}",
|
|
"tcpPose": "{\"x\":-1.443,\"y\":1.443,\"z\":5.609,\"a\":0,\"b\":20,\"c\":45}",
|
|
"toolAxis": "{\"x\":0.242,\"y\":0.242,\"z\":0.94}",
|
|
"executedPathPoints": "0",
|
|
"pathPoints": "1300"
|
|
},
|
|
"frame": "frame-0054.png",
|
|
"captureStartedMs": 1783110136103,
|
|
"captureDurationMs": 145,
|
|
"intervalSincePreviousMs": 145
|
|
},
|
|
{
|
|
"wallClock": "2026-07-03T20:22:16.268Z",
|
|
"perfNow": 8860.20000000298,
|
|
"runState": "running",
|
|
"mode": "auto",
|
|
"interpState": "reading",
|
|
"activeLine": 18,
|
|
"programElapsedSeconds": 0.356,
|
|
"programRemainingSeconds": 61.10500000000001,
|
|
"motionIndex": 1,
|
|
"sampleIndex": 1,
|
|
"programSourceMode": "linuxcnc-machine-file-remap-wasm",
|
|
"executionSourceMode": "linuxcnc-task-motion-hal-wasm",
|
|
"motionCount": 29,
|
|
"message": "task/HAL status tick 186",
|
|
"task": {
|
|
"state": "ON",
|
|
"mode": "AUTO",
|
|
"interpState": "READING",
|
|
"execState": "WAITING_FOR_MOTION",
|
|
"taskPaused": false,
|
|
"singleStepping": false,
|
|
"cycle": 938,
|
|
"openProgram": "/work/sim/axis/vismach/5axis/table-rotary-tilting/xyzbc-trt/demos/xyzbc_switchkins.ngc",
|
|
"openedLineCount": 3,
|
|
"openedSourceLineCount": 44,
|
|
"executableLineCount": 2,
|
|
"nextProgramLine": 17
|
|
},
|
|
"ui": {
|
|
"taskState": "on",
|
|
"taskMode": "auto",
|
|
"interpState": "reading",
|
|
"execState": "waiting_for_motion",
|
|
"taskCycle": 0,
|
|
"servoCycle": 9380,
|
|
"motionQueueDepth": 0,
|
|
"halChangedPinCount": 0,
|
|
"activeLine": 17,
|
|
"motionProgramLine": 17,
|
|
"halProgramLine": 17,
|
|
"activeLineSource": "motion-status",
|
|
"activeLineHalSynced": true,
|
|
"switchkinsType": 0,
|
|
"axisPose": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 5.88033,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"axisPoseFrame": "work",
|
|
"currentVelocity": 1000.002
|
|
},
|
|
"feedback": {
|
|
"apiName": "web-rtcp-5axis-program-runtime-feedback",
|
|
"sourceMode": "linuxcnc-task-motion-hal-wasm",
|
|
"semanticBoundary": "linuxcnc_task_motion_hal_wasm_simulation_runtime",
|
|
"sampleIndex": 1,
|
|
"motionIndex": 1,
|
|
"line": 18,
|
|
"motionProgramLine": 17,
|
|
"halProgramLine": 17,
|
|
"activeLineSource": "motion-status",
|
|
"activeLineHalSynced": true,
|
|
"type": "TASK_MOTION",
|
|
"timeSeconds": 0,
|
|
"axisPose": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 5.88033,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"currentVelocityMmPerMin": 1000.002,
|
|
"requestedVelocityMmPerMin": 1000.002,
|
|
"distanceToGo": 0,
|
|
"dtg": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 0
|
|
},
|
|
"queueDepth": 0,
|
|
"activeDepth": 0,
|
|
"cycle": 9380,
|
|
"taskCycle": 938,
|
|
"halChangedPinCount": 0,
|
|
"sourceFile": "xyzbc_switchkins_sub.ngc",
|
|
"statement": "g0 x+20 y+20 z#<zmax>",
|
|
"motionType": "rapid",
|
|
"activeKinematics": "identity",
|
|
"tcp": {
|
|
"x": -1.4274548532629032,
|
|
"y": 1.427454853262903,
|
|
"z": 5.546404137221915
|
|
},
|
|
"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
|
|
}
|
|
}
|
|
},
|
|
"programUiExecution": {
|
|
"apiName": "web-rtcp-5axis-ui-gcode-live-execution",
|
|
"status": "running",
|
|
"source": "programAxisPreviewPath.samples",
|
|
"samplePeriodMs": 50,
|
|
"sampleIndex": 1,
|
|
"sampleCount": 1300,
|
|
"executedSampleCount": 2,
|
|
"timeMs": 50,
|
|
"activeProgram": "configs/sim/axis/vismach/5axis/table-rotary-tilting/demos/xyzbc_switchkins.ngc",
|
|
"sourceFile": "xyzbc_switchkins_sub.ngc",
|
|
"line": 18,
|
|
"statement": "g0 x+20 y+20 z#<zmax>",
|
|
"operation": "rapid-to-quadrant-center",
|
|
"executionIndex": 4,
|
|
"gcodeStepIndex": 18,
|
|
"segmentIndex": 1,
|
|
"motionType": "rapid",
|
|
"activeKinematics": "identity",
|
|
"joint": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 5.88033,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"tcp": {
|
|
"x": -1.4274548532629032,
|
|
"y": 1.427454853262903,
|
|
"z": 5.546404137221915
|
|
},
|
|
"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"
|
|
},
|
|
"axisPose": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 5.88033,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"tcpPose": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 5.88033,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"toolAxisVector": {
|
|
"x": 0.24184476264797528,
|
|
"y": 0.24184476264797522,
|
|
"z": 0.9396926207859084
|
|
},
|
|
"canvas": {
|
|
"toolhead": "{\"x\":-0.001,\"y\":0.001,\"z\":0.006}",
|
|
"tcpPose": "{\"x\":0,\"y\":0,\"z\":5.88,\"a\":0,\"b\":20,\"c\":45}",
|
|
"toolAxis": "{\"x\":0.242,\"y\":0.242,\"z\":0.94}",
|
|
"executedPathPoints": "0",
|
|
"pathPoints": "1300"
|
|
},
|
|
"frame": "frame-0055.png",
|
|
"captureStartedMs": 1783110136248,
|
|
"captureDurationMs": 166,
|
|
"intervalSincePreviousMs": 145
|
|
},
|
|
{
|
|
"wallClock": "2026-07-03T20:22:16.424Z",
|
|
"perfNow": 9016.20000000298,
|
|
"runState": "running",
|
|
"mode": "auto",
|
|
"interpState": "reading",
|
|
"activeLine": 18,
|
|
"programElapsedSeconds": 0.356,
|
|
"programRemainingSeconds": 61.10500000000001,
|
|
"motionIndex": 1,
|
|
"sampleIndex": 1,
|
|
"programSourceMode": "linuxcnc-machine-file-remap-wasm",
|
|
"executionSourceMode": "linuxcnc-task-motion-hal-wasm",
|
|
"motionCount": 29,
|
|
"message": "task/HAL status tick 190",
|
|
"task": {
|
|
"state": "ON",
|
|
"mode": "AUTO",
|
|
"interpState": "READING",
|
|
"execState": "WAITING_FOR_MOTION",
|
|
"taskPaused": false,
|
|
"singleStepping": false,
|
|
"cycle": 958,
|
|
"openProgram": "/work/sim/axis/vismach/5axis/table-rotary-tilting/xyzbc-trt/demos/xyzbc_switchkins.ngc",
|
|
"openedLineCount": 3,
|
|
"openedSourceLineCount": 44,
|
|
"executableLineCount": 2,
|
|
"nextProgramLine": 17
|
|
},
|
|
"ui": {
|
|
"taskState": "on",
|
|
"taskMode": "auto",
|
|
"interpState": "reading",
|
|
"execState": "waiting_for_motion",
|
|
"taskCycle": 0,
|
|
"servoCycle": 9580,
|
|
"motionQueueDepth": 0,
|
|
"halChangedPinCount": 0,
|
|
"activeLine": 17,
|
|
"motionProgramLine": 17,
|
|
"halProgramLine": 17,
|
|
"activeLineSource": "motion-status",
|
|
"activeLineHalSynced": true,
|
|
"switchkinsType": 0,
|
|
"axisPose": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 5.79221,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"axisPoseFrame": "work",
|
|
"currentVelocity": 1000.002
|
|
},
|
|
"feedback": {
|
|
"apiName": "web-rtcp-5axis-program-runtime-feedback",
|
|
"sourceMode": "linuxcnc-task-motion-hal-wasm",
|
|
"semanticBoundary": "linuxcnc_task_motion_hal_wasm_simulation_runtime",
|
|
"sampleIndex": 1,
|
|
"motionIndex": 1,
|
|
"line": 18,
|
|
"motionProgramLine": 17,
|
|
"halProgramLine": 17,
|
|
"activeLineSource": "motion-status",
|
|
"activeLineHalSynced": true,
|
|
"type": "TASK_MOTION",
|
|
"timeSeconds": 0,
|
|
"axisPose": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 5.79221,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"currentVelocityMmPerMin": 1000.002,
|
|
"requestedVelocityMmPerMin": 1000.002,
|
|
"distanceToGo": 0,
|
|
"dtg": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 0
|
|
},
|
|
"queueDepth": 0,
|
|
"activeDepth": 0,
|
|
"cycle": 9580,
|
|
"taskCycle": 958,
|
|
"halChangedPinCount": 0,
|
|
"sourceFile": "xyzbc_switchkins_sub.ngc",
|
|
"statement": "g0 x+20 y+20 z#<zmax>",
|
|
"motionType": "rapid",
|
|
"activeKinematics": "identity",
|
|
"tcp": {
|
|
"x": -1.4061434927783638,
|
|
"y": 1.4061434927783634,
|
|
"z": 5.46359842347826
|
|
},
|
|
"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
|
|
}
|
|
}
|
|
},
|
|
"programUiExecution": {
|
|
"apiName": "web-rtcp-5axis-ui-gcode-live-execution",
|
|
"status": "running",
|
|
"source": "programAxisPreviewPath.samples",
|
|
"samplePeriodMs": 50,
|
|
"sampleIndex": 1,
|
|
"sampleCount": 1300,
|
|
"executedSampleCount": 2,
|
|
"timeMs": 50,
|
|
"activeProgram": "configs/sim/axis/vismach/5axis/table-rotary-tilting/demos/xyzbc_switchkins.ngc",
|
|
"sourceFile": "xyzbc_switchkins_sub.ngc",
|
|
"line": 18,
|
|
"statement": "g0 x+20 y+20 z#<zmax>",
|
|
"operation": "rapid-to-quadrant-center",
|
|
"executionIndex": 4,
|
|
"gcodeStepIndex": 18,
|
|
"segmentIndex": 1,
|
|
"motionType": "rapid",
|
|
"activeKinematics": "identity",
|
|
"joint": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 5.79221,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"tcp": {
|
|
"x": -1.4061434927783638,
|
|
"y": 1.4061434927783634,
|
|
"z": 5.46359842347826
|
|
},
|
|
"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"
|
|
},
|
|
"axisPose": {
|
|
"x": -1.4008156526572288,
|
|
"y": 1.4008156526572284,
|
|
"z": 5.4428969950423465,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"tcpPose": {
|
|
"x": -1.4008156526572288,
|
|
"y": 1.4008156526572284,
|
|
"z": 5.4428969950423465,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"toolAxisVector": {
|
|
"x": 0.24184476264797528,
|
|
"y": 0.24184476264797522,
|
|
"z": 0.9396926207859084
|
|
},
|
|
"canvas": {
|
|
"toolhead": "{\"x\":-0.001,\"y\":0.001,\"z\":0.005}",
|
|
"tcpPose": "{\"x\":-1.401,\"y\":1.401,\"z\":5.443,\"a\":0,\"b\":20,\"c\":45}",
|
|
"toolAxis": "{\"x\":0.242,\"y\":0.242,\"z\":0.94}",
|
|
"executedPathPoints": "0",
|
|
"pathPoints": "1300"
|
|
},
|
|
"frame": "frame-0056.png",
|
|
"captureStartedMs": 1783110136414,
|
|
"captureDurationMs": 176,
|
|
"intervalSincePreviousMs": 166
|
|
},
|
|
{
|
|
"wallClock": "2026-07-03T20:22:16.596Z",
|
|
"perfNow": 9187.800000000745,
|
|
"runState": "running",
|
|
"mode": "auto",
|
|
"interpState": "reading",
|
|
"activeLine": 18,
|
|
"programElapsedSeconds": 0.356,
|
|
"programRemainingSeconds": 61.10500000000001,
|
|
"motionIndex": 1,
|
|
"sampleIndex": 1,
|
|
"programSourceMode": "linuxcnc-machine-file-remap-wasm",
|
|
"executionSourceMode": "linuxcnc-task-motion-hal-wasm",
|
|
"motionCount": 29,
|
|
"message": "task/HAL status tick 194",
|
|
"task": {
|
|
"state": "ON",
|
|
"mode": "AUTO",
|
|
"interpState": "READING",
|
|
"execState": "WAITING_FOR_MOTION",
|
|
"taskPaused": false,
|
|
"singleStepping": false,
|
|
"cycle": 978,
|
|
"openProgram": "/work/sim/axis/vismach/5axis/table-rotary-tilting/xyzbc-trt/demos/xyzbc_switchkins.ngc",
|
|
"openedLineCount": 3,
|
|
"openedSourceLineCount": 44,
|
|
"executableLineCount": 2,
|
|
"nextProgramLine": 17
|
|
},
|
|
"ui": {
|
|
"taskState": "on",
|
|
"taskMode": "auto",
|
|
"interpState": "reading",
|
|
"execState": "waiting_for_motion",
|
|
"taskCycle": 0,
|
|
"servoCycle": 9780,
|
|
"motionQueueDepth": 0,
|
|
"halChangedPinCount": 0,
|
|
"activeLine": 17,
|
|
"motionProgramLine": 17,
|
|
"halProgramLine": 17,
|
|
"activeLineSource": "motion-status",
|
|
"activeLineHalSynced": true,
|
|
"switchkinsType": 0,
|
|
"axisPose": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 5.70409,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"axisPoseFrame": "work",
|
|
"currentVelocity": 1000.002
|
|
},
|
|
"feedback": {
|
|
"apiName": "web-rtcp-5axis-program-runtime-feedback",
|
|
"sourceMode": "linuxcnc-task-motion-hal-wasm",
|
|
"semanticBoundary": "linuxcnc_task_motion_hal_wasm_simulation_runtime",
|
|
"sampleIndex": 1,
|
|
"motionIndex": 1,
|
|
"line": 18,
|
|
"motionProgramLine": 17,
|
|
"halProgramLine": 17,
|
|
"activeLineSource": "motion-status",
|
|
"activeLineHalSynced": true,
|
|
"type": "TASK_MOTION",
|
|
"timeSeconds": 0,
|
|
"axisPose": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 5.70409,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"currentVelocityMmPerMin": 1000.002,
|
|
"requestedVelocityMmPerMin": 1000.002,
|
|
"distanceToGo": 0,
|
|
"dtg": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 0
|
|
},
|
|
"queueDepth": 0,
|
|
"activeDepth": 0,
|
|
"cycle": 9780,
|
|
"taskCycle": 978,
|
|
"halChangedPinCount": 0,
|
|
"sourceFile": "xyzbc_switchkins_sub.ngc",
|
|
"statement": "g0 x+20 y+20 z#<zmax>",
|
|
"motionType": "rapid",
|
|
"activeKinematics": "identity",
|
|
"tcp": {
|
|
"x": -1.3848321322938242,
|
|
"y": 1.3848321322938237,
|
|
"z": 5.380792709734606
|
|
},
|
|
"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
|
|
}
|
|
}
|
|
},
|
|
"programUiExecution": {
|
|
"apiName": "web-rtcp-5axis-ui-gcode-live-execution",
|
|
"status": "running",
|
|
"source": "programAxisPreviewPath.samples",
|
|
"samplePeriodMs": 50,
|
|
"sampleIndex": 1,
|
|
"sampleCount": 1300,
|
|
"executedSampleCount": 2,
|
|
"timeMs": 50,
|
|
"activeProgram": "configs/sim/axis/vismach/5axis/table-rotary-tilting/demos/xyzbc_switchkins.ngc",
|
|
"sourceFile": "xyzbc_switchkins_sub.ngc",
|
|
"line": 18,
|
|
"statement": "g0 x+20 y+20 z#<zmax>",
|
|
"operation": "rapid-to-quadrant-center",
|
|
"executionIndex": 4,
|
|
"gcodeStepIndex": 18,
|
|
"segmentIndex": 1,
|
|
"motionType": "rapid",
|
|
"activeKinematics": "identity",
|
|
"joint": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 5.70409,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"tcp": {
|
|
"x": -1.3848321322938242,
|
|
"y": 1.3848321322938237,
|
|
"z": 5.380792709734606
|
|
},
|
|
"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"
|
|
},
|
|
"axisPose": {
|
|
"x": -1.3795042921726892,
|
|
"y": 1.379504292172689,
|
|
"z": 5.3600912812986925,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"tcpPose": {
|
|
"x": -1.3795042921726892,
|
|
"y": 1.379504292172689,
|
|
"z": 5.3600912812986925,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"toolAxisVector": {
|
|
"x": 0.24184476264797528,
|
|
"y": 0.24184476264797522,
|
|
"z": 0.9396926207859084
|
|
},
|
|
"canvas": {
|
|
"toolhead": "{\"x\":-0.001,\"y\":0.001,\"z\":0.005}",
|
|
"tcpPose": "{\"x\":-1.38,\"y\":1.38,\"z\":5.36,\"a\":0,\"b\":20,\"c\":45}",
|
|
"toolAxis": "{\"x\":0.242,\"y\":0.242,\"z\":0.94}",
|
|
"executedPathPoints": "0",
|
|
"pathPoints": "1300"
|
|
},
|
|
"frame": "frame-0057.png",
|
|
"captureStartedMs": 1783110136591,
|
|
"captureDurationMs": 177,
|
|
"intervalSincePreviousMs": 177
|
|
},
|
|
{
|
|
"wallClock": "2026-07-03T20:22:16.777Z",
|
|
"perfNow": 9369.5,
|
|
"runState": "running",
|
|
"mode": "auto",
|
|
"interpState": "reading",
|
|
"activeLine": 18,
|
|
"programElapsedSeconds": 0.356,
|
|
"programRemainingSeconds": 61.10500000000001,
|
|
"motionIndex": 1,
|
|
"sampleIndex": 1,
|
|
"programSourceMode": "linuxcnc-machine-file-remap-wasm",
|
|
"executionSourceMode": "linuxcnc-task-motion-hal-wasm",
|
|
"motionCount": 29,
|
|
"message": "task/HAL status tick 199",
|
|
"task": {
|
|
"state": "ON",
|
|
"mode": "AUTO",
|
|
"interpState": "READING",
|
|
"execState": "WAITING_FOR_MOTION",
|
|
"taskPaused": false,
|
|
"singleStepping": false,
|
|
"cycle": 1003,
|
|
"openProgram": "/work/sim/axis/vismach/5axis/table-rotary-tilting/xyzbc-trt/demos/xyzbc_switchkins.ngc",
|
|
"openedLineCount": 3,
|
|
"openedSourceLineCount": 44,
|
|
"executableLineCount": 2,
|
|
"nextProgramLine": 17
|
|
},
|
|
"ui": {
|
|
"taskState": "on",
|
|
"taskMode": "auto",
|
|
"interpState": "reading",
|
|
"execState": "waiting_for_motion",
|
|
"taskCycle": 0,
|
|
"servoCycle": 10030,
|
|
"motionQueueDepth": 0,
|
|
"halChangedPinCount": 0,
|
|
"activeLine": 17,
|
|
"motionProgramLine": 17,
|
|
"halProgramLine": 17,
|
|
"activeLineSource": "motion-status",
|
|
"activeLineHalSynced": true,
|
|
"switchkinsType": 0,
|
|
"axisPose": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 5.59394,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"axisPoseFrame": "work",
|
|
"currentVelocity": 1000.002
|
|
},
|
|
"feedback": {
|
|
"apiName": "web-rtcp-5axis-program-runtime-feedback",
|
|
"sourceMode": "linuxcnc-task-motion-hal-wasm",
|
|
"semanticBoundary": "linuxcnc_task_motion_hal_wasm_simulation_runtime",
|
|
"sampleIndex": 1,
|
|
"motionIndex": 1,
|
|
"line": 18,
|
|
"motionProgramLine": 17,
|
|
"halProgramLine": 17,
|
|
"activeLineSource": "motion-status",
|
|
"activeLineHalSynced": true,
|
|
"type": "TASK_MOTION",
|
|
"timeSeconds": 0,
|
|
"axisPose": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 5.59394,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"currentVelocityMmPerMin": 1000.002,
|
|
"requestedVelocityMmPerMin": 1000.002,
|
|
"distanceToGo": 0,
|
|
"dtg": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 0
|
|
},
|
|
"queueDepth": 0,
|
|
"activeDepth": 0,
|
|
"cycle": 10030,
|
|
"taskCycle": 1003,
|
|
"halChangedPinCount": 0,
|
|
"sourceFile": "xyzbc_switchkins_sub.ngc",
|
|
"statement": "g0 x+20 y+20 z#<zmax>",
|
|
"motionType": "rapid",
|
|
"activeKinematics": "identity",
|
|
"tcp": {
|
|
"x": -1.3581929316881496,
|
|
"y": 1.3581929316881494,
|
|
"z": 5.277285567555038
|
|
},
|
|
"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
|
|
}
|
|
}
|
|
},
|
|
"programUiExecution": {
|
|
"apiName": "web-rtcp-5axis-ui-gcode-live-execution",
|
|
"status": "running",
|
|
"source": "programAxisPreviewPath.samples",
|
|
"samplePeriodMs": 50,
|
|
"sampleIndex": 1,
|
|
"sampleCount": 1300,
|
|
"executedSampleCount": 2,
|
|
"timeMs": 50,
|
|
"activeProgram": "configs/sim/axis/vismach/5axis/table-rotary-tilting/demos/xyzbc_switchkins.ngc",
|
|
"sourceFile": "xyzbc_switchkins_sub.ngc",
|
|
"line": 18,
|
|
"statement": "g0 x+20 y+20 z#<zmax>",
|
|
"operation": "rapid-to-quadrant-center",
|
|
"executionIndex": 4,
|
|
"gcodeStepIndex": 18,
|
|
"segmentIndex": 1,
|
|
"motionType": "rapid",
|
|
"activeKinematics": "identity",
|
|
"joint": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 5.59394,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"tcp": {
|
|
"x": -1.3581929316881496,
|
|
"y": 1.3581929316881494,
|
|
"z": 5.277285567555038
|
|
},
|
|
"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"
|
|
},
|
|
"axisPose": {
|
|
"x": -1.3528650915670148,
|
|
"y": 1.3528650915670144,
|
|
"z": 5.256584139119124,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"tcpPose": {
|
|
"x": -1.3528650915670148,
|
|
"y": 1.3528650915670144,
|
|
"z": 5.256584139119124,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"toolAxisVector": {
|
|
"x": 0.24184476264797528,
|
|
"y": 0.24184476264797522,
|
|
"z": 0.9396926207859084
|
|
},
|
|
"canvas": {
|
|
"toolhead": "{\"x\":-0.001,\"y\":0.001,\"z\":0.005}",
|
|
"tcpPose": "{\"x\":-1.353,\"y\":1.353,\"z\":5.257,\"a\":0,\"b\":20,\"c\":45}",
|
|
"toolAxis": "{\"x\":0.242,\"y\":0.242,\"z\":0.94}",
|
|
"executedPathPoints": "0",
|
|
"pathPoints": "1300"
|
|
},
|
|
"frame": "frame-0058.png",
|
|
"captureStartedMs": 1783110136768,
|
|
"captureDurationMs": 144,
|
|
"intervalSincePreviousMs": 177
|
|
},
|
|
{
|
|
"wallClock": "2026-07-03T20:22:16.933Z",
|
|
"perfNow": 9524.900000002235,
|
|
"runState": "running",
|
|
"mode": "auto",
|
|
"interpState": "reading",
|
|
"activeLine": 18,
|
|
"programElapsedSeconds": 0.356,
|
|
"programRemainingSeconds": 61.10500000000001,
|
|
"motionIndex": 1,
|
|
"sampleIndex": 1,
|
|
"programSourceMode": "linuxcnc-machine-file-remap-wasm",
|
|
"executionSourceMode": "linuxcnc-task-motion-hal-wasm",
|
|
"motionCount": 29,
|
|
"message": "task/HAL status tick 203",
|
|
"task": {
|
|
"state": "ON",
|
|
"mode": "AUTO",
|
|
"interpState": "READING",
|
|
"execState": "WAITING_FOR_MOTION",
|
|
"taskPaused": false,
|
|
"singleStepping": false,
|
|
"cycle": 1023,
|
|
"openProgram": "/work/sim/axis/vismach/5axis/table-rotary-tilting/xyzbc-trt/demos/xyzbc_switchkins.ngc",
|
|
"openedLineCount": 3,
|
|
"openedSourceLineCount": 44,
|
|
"executableLineCount": 2,
|
|
"nextProgramLine": 17
|
|
},
|
|
"ui": {
|
|
"taskState": "on",
|
|
"taskMode": "auto",
|
|
"interpState": "reading",
|
|
"execState": "waiting_for_motion",
|
|
"taskCycle": 0,
|
|
"servoCycle": 10230,
|
|
"motionQueueDepth": 0,
|
|
"halChangedPinCount": 0,
|
|
"activeLine": 17,
|
|
"motionProgramLine": 17,
|
|
"halProgramLine": 17,
|
|
"activeLineSource": "motion-status",
|
|
"activeLineHalSynced": true,
|
|
"switchkinsType": 0,
|
|
"axisPose": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 5.50582,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"axisPoseFrame": "work",
|
|
"currentVelocity": 1000.002
|
|
},
|
|
"feedback": {
|
|
"apiName": "web-rtcp-5axis-program-runtime-feedback",
|
|
"sourceMode": "linuxcnc-task-motion-hal-wasm",
|
|
"semanticBoundary": "linuxcnc_task_motion_hal_wasm_simulation_runtime",
|
|
"sampleIndex": 1,
|
|
"motionIndex": 1,
|
|
"line": 18,
|
|
"motionProgramLine": 17,
|
|
"halProgramLine": 17,
|
|
"activeLineSource": "motion-status",
|
|
"activeLineHalSynced": true,
|
|
"type": "TASK_MOTION",
|
|
"timeSeconds": 0,
|
|
"axisPose": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 5.50582,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"currentVelocityMmPerMin": 1000.002,
|
|
"requestedVelocityMmPerMin": 1000.002,
|
|
"distanceToGo": 0,
|
|
"dtg": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 0
|
|
},
|
|
"queueDepth": 0,
|
|
"activeDepth": 0,
|
|
"cycle": 10230,
|
|
"taskCycle": 1023,
|
|
"halChangedPinCount": 0,
|
|
"sourceFile": "xyzbc_switchkins_sub.ngc",
|
|
"statement": "g0 x+20 y+20 z#<zmax>",
|
|
"motionType": "rapid",
|
|
"activeKinematics": "identity",
|
|
"tcp": {
|
|
"x": -1.3368815712036102,
|
|
"y": 1.3368815712036097,
|
|
"z": 5.194479853811384
|
|
},
|
|
"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
|
|
}
|
|
}
|
|
},
|
|
"programUiExecution": {
|
|
"apiName": "web-rtcp-5axis-ui-gcode-live-execution",
|
|
"status": "running",
|
|
"source": "programAxisPreviewPath.samples",
|
|
"samplePeriodMs": 50,
|
|
"sampleIndex": 1,
|
|
"sampleCount": 1300,
|
|
"executedSampleCount": 2,
|
|
"timeMs": 50,
|
|
"activeProgram": "configs/sim/axis/vismach/5axis/table-rotary-tilting/demos/xyzbc_switchkins.ngc",
|
|
"sourceFile": "xyzbc_switchkins_sub.ngc",
|
|
"line": 18,
|
|
"statement": "g0 x+20 y+20 z#<zmax>",
|
|
"operation": "rapid-to-quadrant-center",
|
|
"executionIndex": 4,
|
|
"gcodeStepIndex": 18,
|
|
"segmentIndex": 1,
|
|
"motionType": "rapid",
|
|
"activeKinematics": "identity",
|
|
"joint": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 5.50582,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"tcp": {
|
|
"x": -1.3368815712036102,
|
|
"y": 1.3368815712036097,
|
|
"z": 5.194479853811384
|
|
},
|
|
"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"
|
|
},
|
|
"axisPose": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 5.50582,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"tcpPose": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 5.50582,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"toolAxisVector": {
|
|
"x": 0.24184476264797528,
|
|
"y": 0.24184476264797522,
|
|
"z": 0.9396926207859084
|
|
},
|
|
"canvas": {
|
|
"toolhead": "{\"x\":-0.001,\"y\":0.001,\"z\":0.005}",
|
|
"tcpPose": "{\"x\":0,\"y\":0,\"z\":5.506,\"a\":0,\"b\":20,\"c\":45}",
|
|
"toolAxis": "{\"x\":0.242,\"y\":0.242,\"z\":0.94}",
|
|
"executedPathPoints": "0",
|
|
"pathPoints": "1300"
|
|
},
|
|
"frame": "frame-0059.png",
|
|
"captureStartedMs": 1783110136912,
|
|
"captureDurationMs": 130,
|
|
"intervalSincePreviousMs": 144
|
|
},
|
|
{
|
|
"wallClock": "2026-07-03T20:22:17.044Z",
|
|
"perfNow": 9636.300000000745,
|
|
"runState": "running",
|
|
"mode": "auto",
|
|
"interpState": "reading",
|
|
"activeLine": 18,
|
|
"programElapsedSeconds": 0.356,
|
|
"programRemainingSeconds": 61.10500000000001,
|
|
"motionIndex": 1,
|
|
"sampleIndex": 1,
|
|
"programSourceMode": "linuxcnc-machine-file-remap-wasm",
|
|
"executionSourceMode": "linuxcnc-task-motion-hal-wasm",
|
|
"motionCount": 29,
|
|
"message": "task/HAL status tick 206",
|
|
"task": {
|
|
"state": "ON",
|
|
"mode": "AUTO",
|
|
"interpState": "READING",
|
|
"execState": "WAITING_FOR_MOTION",
|
|
"taskPaused": false,
|
|
"singleStepping": false,
|
|
"cycle": 1038,
|
|
"openProgram": "/work/sim/axis/vismach/5axis/table-rotary-tilting/xyzbc-trt/demos/xyzbc_switchkins.ngc",
|
|
"openedLineCount": 3,
|
|
"openedSourceLineCount": 44,
|
|
"executableLineCount": 2,
|
|
"nextProgramLine": 17
|
|
},
|
|
"ui": {
|
|
"taskState": "on",
|
|
"taskMode": "auto",
|
|
"interpState": "reading",
|
|
"execState": "waiting_for_motion",
|
|
"taskCycle": 0,
|
|
"servoCycle": 10380,
|
|
"motionQueueDepth": 0,
|
|
"halChangedPinCount": 0,
|
|
"activeLine": 17,
|
|
"motionProgramLine": 17,
|
|
"halProgramLine": 17,
|
|
"activeLineSource": "motion-status",
|
|
"activeLineHalSynced": true,
|
|
"switchkinsType": 0,
|
|
"axisPose": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 5.43973,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"axisPoseFrame": "work",
|
|
"currentVelocity": 1000.002
|
|
},
|
|
"feedback": {
|
|
"apiName": "web-rtcp-5axis-program-runtime-feedback",
|
|
"sourceMode": "linuxcnc-task-motion-hal-wasm",
|
|
"semanticBoundary": "linuxcnc_task_motion_hal_wasm_simulation_runtime",
|
|
"sampleIndex": 1,
|
|
"motionIndex": 1,
|
|
"line": 18,
|
|
"motionProgramLine": 17,
|
|
"halProgramLine": 17,
|
|
"activeLineSource": "motion-status",
|
|
"activeLineHalSynced": true,
|
|
"type": "TASK_MOTION",
|
|
"timeSeconds": 0,
|
|
"axisPose": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 5.43973,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"currentVelocityMmPerMin": 1000.002,
|
|
"requestedVelocityMmPerMin": 1000.002,
|
|
"distanceToGo": 0,
|
|
"dtg": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 0
|
|
},
|
|
"queueDepth": 0,
|
|
"activeDepth": 0,
|
|
"cycle": 10380,
|
|
"taskCycle": 1038,
|
|
"halChangedPinCount": 0,
|
|
"sourceFile": "xyzbc_switchkins_sub.ngc",
|
|
"statement": "g0 x+20 y+20 z#<zmax>",
|
|
"motionType": "rapid",
|
|
"activeKinematics": "identity",
|
|
"tcp": {
|
|
"x": -1.3208980508402055,
|
|
"y": 1.320898050840205,
|
|
"z": 5.132375568503643
|
|
},
|
|
"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
|
|
}
|
|
}
|
|
},
|
|
"programUiExecution": {
|
|
"apiName": "web-rtcp-5axis-ui-gcode-live-execution",
|
|
"status": "running",
|
|
"source": "programAxisPreviewPath.samples",
|
|
"samplePeriodMs": 50,
|
|
"sampleIndex": 1,
|
|
"sampleCount": 1300,
|
|
"executedSampleCount": 2,
|
|
"timeMs": 50,
|
|
"activeProgram": "configs/sim/axis/vismach/5axis/table-rotary-tilting/demos/xyzbc_switchkins.ngc",
|
|
"sourceFile": "xyzbc_switchkins_sub.ngc",
|
|
"line": 18,
|
|
"statement": "g0 x+20 y+20 z#<zmax>",
|
|
"operation": "rapid-to-quadrant-center",
|
|
"executionIndex": 4,
|
|
"gcodeStepIndex": 18,
|
|
"segmentIndex": 1,
|
|
"motionType": "rapid",
|
|
"activeKinematics": "identity",
|
|
"joint": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 5.43973,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"tcp": {
|
|
"x": -1.3208980508402055,
|
|
"y": 1.320898050840205,
|
|
"z": 5.132375568503643
|
|
},
|
|
"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"
|
|
},
|
|
"axisPose": {
|
|
"x": -1.3155702107190705,
|
|
"y": 1.3155702107190703,
|
|
"z": 5.11167414006773,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"tcpPose": {
|
|
"x": -1.3155702107190705,
|
|
"y": 1.3155702107190703,
|
|
"z": 5.11167414006773,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"toolAxisVector": {
|
|
"x": 0.24184476264797528,
|
|
"y": 0.24184476264797522,
|
|
"z": 0.9396926207859084
|
|
},
|
|
"canvas": {
|
|
"toolhead": "{\"x\":-0.001,\"y\":0.001,\"z\":0.005}",
|
|
"tcpPose": "{\"x\":-1.316,\"y\":1.316,\"z\":5.112,\"a\":0,\"b\":20,\"c\":45}",
|
|
"toolAxis": "{\"x\":0.242,\"y\":0.242,\"z\":0.94}",
|
|
"executedPathPoints": "0",
|
|
"pathPoints": "1300"
|
|
},
|
|
"frame": "frame-0060.png",
|
|
"captureStartedMs": 1783110137042,
|
|
"captureDurationMs": 119,
|
|
"intervalSincePreviousMs": 130
|
|
},
|
|
{
|
|
"wallClock": "2026-07-03T20:22:17.164Z",
|
|
"perfNow": 9756.10000000149,
|
|
"runState": "running",
|
|
"mode": "auto",
|
|
"interpState": "reading",
|
|
"activeLine": 18,
|
|
"programElapsedSeconds": 0.356,
|
|
"programRemainingSeconds": 61.10500000000001,
|
|
"motionIndex": 1,
|
|
"sampleIndex": 1,
|
|
"programSourceMode": "linuxcnc-machine-file-remap-wasm",
|
|
"executionSourceMode": "linuxcnc-task-motion-hal-wasm",
|
|
"motionCount": 29,
|
|
"message": "task/HAL status tick 209",
|
|
"task": {
|
|
"state": "ON",
|
|
"mode": "AUTO",
|
|
"interpState": "READING",
|
|
"execState": "WAITING_FOR_MOTION",
|
|
"taskPaused": false,
|
|
"singleStepping": false,
|
|
"cycle": 1053,
|
|
"openProgram": "/work/sim/axis/vismach/5axis/table-rotary-tilting/xyzbc-trt/demos/xyzbc_switchkins.ngc",
|
|
"openedLineCount": 3,
|
|
"openedSourceLineCount": 44,
|
|
"executableLineCount": 2,
|
|
"nextProgramLine": 17
|
|
},
|
|
"ui": {
|
|
"taskState": "on",
|
|
"taskMode": "auto",
|
|
"interpState": "reading",
|
|
"execState": "waiting_for_motion",
|
|
"taskCycle": 0,
|
|
"servoCycle": 10530,
|
|
"motionQueueDepth": 0,
|
|
"halChangedPinCount": 0,
|
|
"activeLine": 17,
|
|
"motionProgramLine": 17,
|
|
"halProgramLine": 17,
|
|
"activeLineSource": "motion-status",
|
|
"activeLineHalSynced": true,
|
|
"switchkinsType": 0,
|
|
"axisPose": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 5.37363,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"axisPoseFrame": "work",
|
|
"currentVelocity": 1000.002
|
|
},
|
|
"feedback": {
|
|
"apiName": "web-rtcp-5axis-program-runtime-feedback",
|
|
"sourceMode": "linuxcnc-task-motion-hal-wasm",
|
|
"semanticBoundary": "linuxcnc_task_motion_hal_wasm_simulation_runtime",
|
|
"sampleIndex": 1,
|
|
"motionIndex": 1,
|
|
"line": 18,
|
|
"motionProgramLine": 17,
|
|
"halProgramLine": 17,
|
|
"activeLineSource": "motion-status",
|
|
"activeLineHalSynced": true,
|
|
"type": "TASK_MOTION",
|
|
"timeSeconds": 0,
|
|
"axisPose": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 5.37363,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"currentVelocityMmPerMin": 1000.002,
|
|
"requestedVelocityMmPerMin": 1000.002,
|
|
"distanceToGo": 0,
|
|
"dtg": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 0
|
|
},
|
|
"queueDepth": 0,
|
|
"activeDepth": 0,
|
|
"cycle": 10530,
|
|
"taskCycle": 1053,
|
|
"halChangedPinCount": 0,
|
|
"sourceFile": "xyzbc_switchkins_sub.ngc",
|
|
"statement": "g0 x+20 y+20 z#<zmax>",
|
|
"motionType": "rapid",
|
|
"activeKinematics": "identity",
|
|
"tcp": {
|
|
"x": -1.3049121120291745,
|
|
"y": 1.304912112029174,
|
|
"z": 5.070261886269695
|
|
},
|
|
"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
|
|
}
|
|
}
|
|
},
|
|
"programUiExecution": {
|
|
"apiName": "web-rtcp-5axis-ui-gcode-live-execution",
|
|
"status": "running",
|
|
"source": "programAxisPreviewPath.samples",
|
|
"samplePeriodMs": 50,
|
|
"sampleIndex": 1,
|
|
"sampleCount": 1300,
|
|
"executedSampleCount": 2,
|
|
"timeMs": 50,
|
|
"activeProgram": "configs/sim/axis/vismach/5axis/table-rotary-tilting/demos/xyzbc_switchkins.ngc",
|
|
"sourceFile": "xyzbc_switchkins_sub.ngc",
|
|
"line": 18,
|
|
"statement": "g0 x+20 y+20 z#<zmax>",
|
|
"operation": "rapid-to-quadrant-center",
|
|
"executionIndex": 4,
|
|
"gcodeStepIndex": 18,
|
|
"segmentIndex": 1,
|
|
"motionType": "rapid",
|
|
"activeKinematics": "identity",
|
|
"joint": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 5.37363,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"tcp": {
|
|
"x": -1.3049121120291745,
|
|
"y": 1.304912112029174,
|
|
"z": 5.070261886269695
|
|
},
|
|
"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"
|
|
},
|
|
"axisPose": {
|
|
"x": -1.2995842719080395,
|
|
"y": 1.2995842719080393,
|
|
"z": 5.049560457833781,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"tcpPose": {
|
|
"x": -1.2995842719080395,
|
|
"y": 1.2995842719080393,
|
|
"z": 5.049560457833781,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"toolAxisVector": {
|
|
"x": 0.24184476264797528,
|
|
"y": 0.24184476264797522,
|
|
"z": 0.9396926207859084
|
|
},
|
|
"canvas": {
|
|
"toolhead": "{\"x\":-0.001,\"y\":0.001,\"z\":0.005}",
|
|
"tcpPose": "{\"x\":-1.3,\"y\":1.3,\"z\":5.05,\"a\":0,\"b\":20,\"c\":45}",
|
|
"toolAxis": "{\"x\":0.242,\"y\":0.242,\"z\":0.94}",
|
|
"executedPathPoints": "0",
|
|
"pathPoints": "1300"
|
|
},
|
|
"frame": "frame-0061.png",
|
|
"captureStartedMs": 1783110137161,
|
|
"captureDurationMs": 106,
|
|
"intervalSincePreviousMs": 119
|
|
},
|
|
{
|
|
"wallClock": "2026-07-03T20:22:17.268Z",
|
|
"perfNow": 9860.300000000745,
|
|
"runState": "running",
|
|
"mode": "auto",
|
|
"interpState": "reading",
|
|
"activeLine": 18,
|
|
"programElapsedSeconds": 0.356,
|
|
"programRemainingSeconds": 61.10500000000001,
|
|
"motionIndex": 1,
|
|
"sampleIndex": 1,
|
|
"programSourceMode": "linuxcnc-machine-file-remap-wasm",
|
|
"executionSourceMode": "linuxcnc-task-motion-hal-wasm",
|
|
"motionCount": 29,
|
|
"message": "task/HAL status tick 212",
|
|
"task": {
|
|
"state": "ON",
|
|
"mode": "AUTO",
|
|
"interpState": "READING",
|
|
"execState": "WAITING_FOR_MOTION",
|
|
"taskPaused": false,
|
|
"singleStepping": false,
|
|
"cycle": 1068,
|
|
"openProgram": "/work/sim/axis/vismach/5axis/table-rotary-tilting/xyzbc-trt/demos/xyzbc_switchkins.ngc",
|
|
"openedLineCount": 3,
|
|
"openedSourceLineCount": 44,
|
|
"executableLineCount": 2,
|
|
"nextProgramLine": 17
|
|
},
|
|
"ui": {
|
|
"taskState": "on",
|
|
"taskMode": "auto",
|
|
"interpState": "reading",
|
|
"execState": "waiting_for_motion",
|
|
"taskCycle": 0,
|
|
"servoCycle": 10680,
|
|
"motionQueueDepth": 0,
|
|
"halChangedPinCount": 0,
|
|
"activeLine": 17,
|
|
"motionProgramLine": 17,
|
|
"halProgramLine": 17,
|
|
"activeLineSource": "motion-status",
|
|
"activeLineHalSynced": true,
|
|
"switchkinsType": 0,
|
|
"axisPose": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 5.30754,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"axisPoseFrame": "work",
|
|
"currentVelocity": 1000.002
|
|
},
|
|
"feedback": {
|
|
"apiName": "web-rtcp-5axis-program-runtime-feedback",
|
|
"sourceMode": "linuxcnc-task-motion-hal-wasm",
|
|
"semanticBoundary": "linuxcnc_task_motion_hal_wasm_simulation_runtime",
|
|
"sampleIndex": 1,
|
|
"motionIndex": 1,
|
|
"line": 18,
|
|
"motionProgramLine": 17,
|
|
"halProgramLine": 17,
|
|
"activeLineSource": "motion-status",
|
|
"activeLineHalSynced": true,
|
|
"type": "TASK_MOTION",
|
|
"timeSeconds": 0,
|
|
"axisPose": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 5.30754,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"currentVelocityMmPerMin": 1000.002,
|
|
"requestedVelocityMmPerMin": 1000.002,
|
|
"distanceToGo": 0,
|
|
"dtg": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 0
|
|
},
|
|
"queueDepth": 0,
|
|
"activeDepth": 0,
|
|
"cycle": 10680,
|
|
"taskCycle": 1068,
|
|
"halChangedPinCount": 0,
|
|
"sourceFile": "xyzbc_switchkins_sub.ngc",
|
|
"statement": "g0 x+20 y+20 z#<zmax>",
|
|
"motionType": "rapid",
|
|
"activeKinematics": "identity",
|
|
"tcp": {
|
|
"x": -1.2889285916657698,
|
|
"y": 1.2889285916657693,
|
|
"z": 5.008157600961955
|
|
},
|
|
"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
|
|
}
|
|
}
|
|
},
|
|
"programUiExecution": {
|
|
"apiName": "web-rtcp-5axis-ui-gcode-live-execution",
|
|
"status": "running",
|
|
"source": "programAxisPreviewPath.samples",
|
|
"samplePeriodMs": 50,
|
|
"sampleIndex": 1,
|
|
"sampleCount": 1300,
|
|
"executedSampleCount": 2,
|
|
"timeMs": 50,
|
|
"activeProgram": "configs/sim/axis/vismach/5axis/table-rotary-tilting/demos/xyzbc_switchkins.ngc",
|
|
"sourceFile": "xyzbc_switchkins_sub.ngc",
|
|
"line": 18,
|
|
"statement": "g0 x+20 y+20 z#<zmax>",
|
|
"operation": "rapid-to-quadrant-center",
|
|
"executionIndex": 4,
|
|
"gcodeStepIndex": 18,
|
|
"segmentIndex": 1,
|
|
"motionType": "rapid",
|
|
"activeKinematics": "identity",
|
|
"joint": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 5.30754,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"tcp": {
|
|
"x": -1.2889285916657698,
|
|
"y": 1.2889285916657693,
|
|
"z": 5.008157600961955
|
|
},
|
|
"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"
|
|
},
|
|
"axisPose": {
|
|
"x": -1.2836007515446348,
|
|
"y": 1.2836007515446344,
|
|
"z": 4.9874561725260405,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"tcpPose": {
|
|
"x": -1.2836007515446348,
|
|
"y": 1.2836007515446344,
|
|
"z": 4.9874561725260405,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"toolAxisVector": {
|
|
"x": 0.24184476264797528,
|
|
"y": 0.24184476264797522,
|
|
"z": 0.9396926207859084
|
|
},
|
|
"canvas": {
|
|
"toolhead": "{\"x\":-0.001,\"y\":0.001,\"z\":0.005}",
|
|
"tcpPose": "{\"x\":-1.284,\"y\":1.284,\"z\":4.987,\"a\":0,\"b\":20,\"c\":45}",
|
|
"toolAxis": "{\"x\":0.242,\"y\":0.242,\"z\":0.94}",
|
|
"executedPathPoints": "0",
|
|
"pathPoints": "1300"
|
|
},
|
|
"frame": "frame-0062.png",
|
|
"captureStartedMs": 1783110137267,
|
|
"captureDurationMs": 138,
|
|
"intervalSincePreviousMs": 106
|
|
},
|
|
{
|
|
"wallClock": "2026-07-03T20:22:17.406Z",
|
|
"perfNow": 9998.10000000149,
|
|
"runState": "running",
|
|
"mode": "auto",
|
|
"interpState": "reading",
|
|
"activeLine": 18,
|
|
"programElapsedSeconds": 0.356,
|
|
"programRemainingSeconds": 61.10500000000001,
|
|
"motionIndex": 1,
|
|
"sampleIndex": 1,
|
|
"programSourceMode": "linuxcnc-machine-file-remap-wasm",
|
|
"executionSourceMode": "linuxcnc-task-motion-hal-wasm",
|
|
"motionCount": 29,
|
|
"message": "task/HAL status tick 216",
|
|
"task": {
|
|
"state": "ON",
|
|
"mode": "AUTO",
|
|
"interpState": "READING",
|
|
"execState": "WAITING_FOR_MOTION",
|
|
"taskPaused": false,
|
|
"singleStepping": false,
|
|
"cycle": 1088,
|
|
"openProgram": "/work/sim/axis/vismach/5axis/table-rotary-tilting/xyzbc-trt/demos/xyzbc_switchkins.ngc",
|
|
"openedLineCount": 3,
|
|
"openedSourceLineCount": 44,
|
|
"executableLineCount": 2,
|
|
"nextProgramLine": 17
|
|
},
|
|
"ui": {
|
|
"taskState": "on",
|
|
"taskMode": "auto",
|
|
"interpState": "reading",
|
|
"execState": "waiting_for_motion",
|
|
"taskCycle": 0,
|
|
"servoCycle": 10880,
|
|
"motionQueueDepth": 0,
|
|
"halChangedPinCount": 0,
|
|
"activeLine": 17,
|
|
"motionProgramLine": 17,
|
|
"halProgramLine": 17,
|
|
"activeLineSource": "motion-status",
|
|
"activeLineHalSynced": true,
|
|
"switchkinsType": 0,
|
|
"axisPose": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 5.21942,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"axisPoseFrame": "work",
|
|
"currentVelocity": 1000.002
|
|
},
|
|
"feedback": {
|
|
"apiName": "web-rtcp-5axis-program-runtime-feedback",
|
|
"sourceMode": "linuxcnc-task-motion-hal-wasm",
|
|
"semanticBoundary": "linuxcnc_task_motion_hal_wasm_simulation_runtime",
|
|
"sampleIndex": 1,
|
|
"motionIndex": 1,
|
|
"line": 18,
|
|
"motionProgramLine": 17,
|
|
"halProgramLine": 17,
|
|
"activeLineSource": "motion-status",
|
|
"activeLineHalSynced": true,
|
|
"type": "TASK_MOTION",
|
|
"timeSeconds": 0,
|
|
"axisPose": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 5.21942,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"currentVelocityMmPerMin": 1000.002,
|
|
"requestedVelocityMmPerMin": 1000.002,
|
|
"distanceToGo": 0,
|
|
"dtg": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 0
|
|
},
|
|
"queueDepth": 0,
|
|
"activeDepth": 0,
|
|
"cycle": 10880,
|
|
"taskCycle": 1088,
|
|
"halChangedPinCount": 0,
|
|
"sourceFile": "xyzbc_switchkins_sub.ngc",
|
|
"statement": "g0 x+20 y+20 z#<zmax>",
|
|
"motionType": "rapid",
|
|
"activeKinematics": "identity",
|
|
"tcp": {
|
|
"x": -1.2676172311812302,
|
|
"y": 1.2676172311812297,
|
|
"z": 4.9253518872183
|
|
},
|
|
"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
|
|
}
|
|
}
|
|
},
|
|
"programUiExecution": {
|
|
"apiName": "web-rtcp-5axis-ui-gcode-live-execution",
|
|
"status": "running",
|
|
"source": "programAxisPreviewPath.samples",
|
|
"samplePeriodMs": 50,
|
|
"sampleIndex": 1,
|
|
"sampleCount": 1300,
|
|
"executedSampleCount": 2,
|
|
"timeMs": 50,
|
|
"activeProgram": "configs/sim/axis/vismach/5axis/table-rotary-tilting/demos/xyzbc_switchkins.ngc",
|
|
"sourceFile": "xyzbc_switchkins_sub.ngc",
|
|
"line": 18,
|
|
"statement": "g0 x+20 y+20 z#<zmax>",
|
|
"operation": "rapid-to-quadrant-center",
|
|
"executionIndex": 4,
|
|
"gcodeStepIndex": 18,
|
|
"segmentIndex": 1,
|
|
"motionType": "rapid",
|
|
"activeKinematics": "identity",
|
|
"joint": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 5.21942,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"tcp": {
|
|
"x": -1.2676172311812302,
|
|
"y": 1.2676172311812297,
|
|
"z": 4.9253518872183
|
|
},
|
|
"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"
|
|
},
|
|
"axisPose": {
|
|
"x": -1.2622893910600952,
|
|
"y": 1.262289391060095,
|
|
"z": 4.9046504587823865,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"tcpPose": {
|
|
"x": -1.2622893910600952,
|
|
"y": 1.262289391060095,
|
|
"z": 4.9046504587823865,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"toolAxisVector": {
|
|
"x": 0.24184476264797528,
|
|
"y": 0.24184476264797522,
|
|
"z": 0.9396926207859084
|
|
},
|
|
"canvas": {
|
|
"toolhead": "{\"x\":-0.001,\"y\":0.001,\"z\":0.005}",
|
|
"tcpPose": "{\"x\":-1.262,\"y\":1.262,\"z\":4.905,\"a\":0,\"b\":20,\"c\":45}",
|
|
"toolAxis": "{\"x\":0.242,\"y\":0.242,\"z\":0.94}",
|
|
"executedPathPoints": "0",
|
|
"pathPoints": "1300"
|
|
},
|
|
"frame": "frame-0063.png",
|
|
"captureStartedMs": 1783110137405,
|
|
"captureDurationMs": 112,
|
|
"intervalSincePreviousMs": 138
|
|
},
|
|
{
|
|
"wallClock": "2026-07-03T20:22:17.526Z",
|
|
"perfNow": 10118.300000000745,
|
|
"runState": "running",
|
|
"mode": "auto",
|
|
"interpState": "reading",
|
|
"activeLine": 18,
|
|
"programElapsedSeconds": 0.356,
|
|
"programRemainingSeconds": 61.10500000000001,
|
|
"motionIndex": 1,
|
|
"sampleIndex": 1,
|
|
"programSourceMode": "linuxcnc-machine-file-remap-wasm",
|
|
"executionSourceMode": "linuxcnc-task-motion-hal-wasm",
|
|
"motionCount": 29,
|
|
"message": "task/HAL status tick 219",
|
|
"task": {
|
|
"state": "ON",
|
|
"mode": "AUTO",
|
|
"interpState": "READING",
|
|
"execState": "WAITING_FOR_MOTION",
|
|
"taskPaused": false,
|
|
"singleStepping": false,
|
|
"cycle": 1103,
|
|
"openProgram": "/work/sim/axis/vismach/5axis/table-rotary-tilting/xyzbc-trt/demos/xyzbc_switchkins.ngc",
|
|
"openedLineCount": 3,
|
|
"openedSourceLineCount": 44,
|
|
"executableLineCount": 2,
|
|
"nextProgramLine": 17
|
|
},
|
|
"ui": {
|
|
"taskState": "on",
|
|
"taskMode": "auto",
|
|
"interpState": "reading",
|
|
"execState": "waiting_for_motion",
|
|
"taskCycle": 0,
|
|
"servoCycle": 11030,
|
|
"motionQueueDepth": 0,
|
|
"halChangedPinCount": 0,
|
|
"activeLine": 17,
|
|
"motionProgramLine": 17,
|
|
"halProgramLine": 17,
|
|
"activeLineSource": "motion-status",
|
|
"activeLineHalSynced": true,
|
|
"switchkinsType": 0,
|
|
"axisPose": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 5.15333,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"axisPoseFrame": "work",
|
|
"currentVelocity": 1000.002
|
|
},
|
|
"feedback": {
|
|
"apiName": "web-rtcp-5axis-program-runtime-feedback",
|
|
"sourceMode": "linuxcnc-task-motion-hal-wasm",
|
|
"semanticBoundary": "linuxcnc_task_motion_hal_wasm_simulation_runtime",
|
|
"sampleIndex": 1,
|
|
"motionIndex": 1,
|
|
"line": 18,
|
|
"motionProgramLine": 17,
|
|
"halProgramLine": 17,
|
|
"activeLineSource": "motion-status",
|
|
"activeLineHalSynced": true,
|
|
"type": "TASK_MOTION",
|
|
"timeSeconds": 0,
|
|
"axisPose": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 5.15333,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"currentVelocityMmPerMin": 1000.002,
|
|
"requestedVelocityMmPerMin": 1000.002,
|
|
"distanceToGo": 0,
|
|
"dtg": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 0
|
|
},
|
|
"queueDepth": 0,
|
|
"activeDepth": 0,
|
|
"cycle": 11030,
|
|
"taskCycle": 1103,
|
|
"halChangedPinCount": 0,
|
|
"sourceFile": "xyzbc_switchkins_sub.ngc",
|
|
"statement": "g0 x+20 y+20 z#<zmax>",
|
|
"motionType": "rapid",
|
|
"activeKinematics": "identity",
|
|
"tcp": {
|
|
"x": -1.2516337108178255,
|
|
"y": 1.251633710817825,
|
|
"z": 4.863247601910559
|
|
},
|
|
"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
|
|
}
|
|
}
|
|
},
|
|
"programUiExecution": {
|
|
"apiName": "web-rtcp-5axis-ui-gcode-live-execution",
|
|
"status": "running",
|
|
"source": "programAxisPreviewPath.samples",
|
|
"samplePeriodMs": 50,
|
|
"sampleIndex": 1,
|
|
"sampleCount": 1300,
|
|
"executedSampleCount": 2,
|
|
"timeMs": 50,
|
|
"activeProgram": "configs/sim/axis/vismach/5axis/table-rotary-tilting/demos/xyzbc_switchkins.ngc",
|
|
"sourceFile": "xyzbc_switchkins_sub.ngc",
|
|
"line": 18,
|
|
"statement": "g0 x+20 y+20 z#<zmax>",
|
|
"operation": "rapid-to-quadrant-center",
|
|
"executionIndex": 4,
|
|
"gcodeStepIndex": 18,
|
|
"segmentIndex": 1,
|
|
"motionType": "rapid",
|
|
"activeKinematics": "identity",
|
|
"joint": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 5.15333,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"tcp": {
|
|
"x": -1.2516337108178255,
|
|
"y": 1.251633710817825,
|
|
"z": 4.863247601910559
|
|
},
|
|
"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"
|
|
},
|
|
"axisPose": {
|
|
"x": -1.2463058706966905,
|
|
"y": 1.2463058706966903,
|
|
"z": 4.842546173474646,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"tcpPose": {
|
|
"x": -1.2463058706966905,
|
|
"y": 1.2463058706966903,
|
|
"z": 4.842546173474646,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"toolAxisVector": {
|
|
"x": 0.24184476264797528,
|
|
"y": 0.24184476264797522,
|
|
"z": 0.9396926207859084
|
|
},
|
|
"canvas": {
|
|
"toolhead": "{\"x\":-0.001,\"y\":0.001,\"z\":0.005}",
|
|
"tcpPose": "{\"x\":-1.246,\"y\":1.246,\"z\":4.843,\"a\":0,\"b\":20,\"c\":45}",
|
|
"toolAxis": "{\"x\":0.242,\"y\":0.242,\"z\":0.94}",
|
|
"executedPathPoints": "0",
|
|
"pathPoints": "1300"
|
|
},
|
|
"frame": "frame-0064.png",
|
|
"captureStartedMs": 1783110137517,
|
|
"captureDurationMs": 147,
|
|
"intervalSincePreviousMs": 112
|
|
},
|
|
{
|
|
"wallClock": "2026-07-03T20:22:17.673Z",
|
|
"perfNow": 10265.5,
|
|
"runState": "running",
|
|
"mode": "auto",
|
|
"interpState": "reading",
|
|
"activeLine": 18,
|
|
"programElapsedSeconds": 0.356,
|
|
"programRemainingSeconds": 61.10500000000001,
|
|
"motionIndex": 1,
|
|
"sampleIndex": 1,
|
|
"programSourceMode": "linuxcnc-machine-file-remap-wasm",
|
|
"executionSourceMode": "linuxcnc-task-motion-hal-wasm",
|
|
"motionCount": 29,
|
|
"message": "task/HAL status tick 223",
|
|
"task": {
|
|
"state": "ON",
|
|
"mode": "AUTO",
|
|
"interpState": "READING",
|
|
"execState": "WAITING_FOR_MOTION",
|
|
"taskPaused": false,
|
|
"singleStepping": false,
|
|
"cycle": 1123,
|
|
"openProgram": "/work/sim/axis/vismach/5axis/table-rotary-tilting/xyzbc-trt/demos/xyzbc_switchkins.ngc",
|
|
"openedLineCount": 3,
|
|
"openedSourceLineCount": 44,
|
|
"executableLineCount": 2,
|
|
"nextProgramLine": 17
|
|
},
|
|
"ui": {
|
|
"taskState": "on",
|
|
"taskMode": "auto",
|
|
"interpState": "reading",
|
|
"execState": "waiting_for_motion",
|
|
"taskCycle": 0,
|
|
"servoCycle": 11230,
|
|
"motionQueueDepth": 0,
|
|
"halChangedPinCount": 0,
|
|
"activeLine": 17,
|
|
"motionProgramLine": 17,
|
|
"halProgramLine": 17,
|
|
"activeLineSource": "motion-status",
|
|
"activeLineHalSynced": true,
|
|
"switchkinsType": 0,
|
|
"axisPose": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 5.06521,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"axisPoseFrame": "work",
|
|
"currentVelocity": 1000.002
|
|
},
|
|
"feedback": {
|
|
"apiName": "web-rtcp-5axis-program-runtime-feedback",
|
|
"sourceMode": "linuxcnc-task-motion-hal-wasm",
|
|
"semanticBoundary": "linuxcnc_task_motion_hal_wasm_simulation_runtime",
|
|
"sampleIndex": 1,
|
|
"motionIndex": 1,
|
|
"line": 18,
|
|
"motionProgramLine": 17,
|
|
"halProgramLine": 17,
|
|
"activeLineSource": "motion-status",
|
|
"activeLineHalSynced": true,
|
|
"type": "TASK_MOTION",
|
|
"timeSeconds": 0,
|
|
"axisPose": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 5.06521,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"currentVelocityMmPerMin": 1000.002,
|
|
"requestedVelocityMmPerMin": 1000.002,
|
|
"distanceToGo": 0,
|
|
"dtg": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 0
|
|
},
|
|
"queueDepth": 0,
|
|
"activeDepth": 0,
|
|
"cycle": 11230,
|
|
"taskCycle": 1123,
|
|
"halChangedPinCount": 0,
|
|
"sourceFile": "xyzbc_switchkins_sub.ngc",
|
|
"statement": "g0 x+20 y+20 z#<zmax>",
|
|
"motionType": "rapid",
|
|
"activeKinematics": "identity",
|
|
"tcp": {
|
|
"x": -1.2303223503332859,
|
|
"y": 1.2303223503332856,
|
|
"z": 4.780441888166905
|
|
},
|
|
"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
|
|
}
|
|
}
|
|
},
|
|
"programUiExecution": {
|
|
"apiName": "web-rtcp-5axis-ui-gcode-live-execution",
|
|
"status": "running",
|
|
"source": "programAxisPreviewPath.samples",
|
|
"samplePeriodMs": 50,
|
|
"sampleIndex": 1,
|
|
"sampleCount": 1300,
|
|
"executedSampleCount": 2,
|
|
"timeMs": 50,
|
|
"activeProgram": "configs/sim/axis/vismach/5axis/table-rotary-tilting/demos/xyzbc_switchkins.ngc",
|
|
"sourceFile": "xyzbc_switchkins_sub.ngc",
|
|
"line": 18,
|
|
"statement": "g0 x+20 y+20 z#<zmax>",
|
|
"operation": "rapid-to-quadrant-center",
|
|
"executionIndex": 4,
|
|
"gcodeStepIndex": 18,
|
|
"segmentIndex": 1,
|
|
"motionType": "rapid",
|
|
"activeKinematics": "identity",
|
|
"joint": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 5.06521,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"tcp": {
|
|
"x": -1.2303223503332859,
|
|
"y": 1.2303223503332856,
|
|
"z": 4.780441888166905
|
|
},
|
|
"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"
|
|
},
|
|
"axisPose": {
|
|
"x": -1.2249945102121509,
|
|
"y": 1.2249945102121507,
|
|
"z": 4.759740459730992,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"tcpPose": {
|
|
"x": -1.2249945102121509,
|
|
"y": 1.2249945102121507,
|
|
"z": 4.759740459730992,
|
|
"a": 0,
|
|
"b": 20,
|
|
"c": 45
|
|
},
|
|
"toolAxisVector": {
|
|
"x": 0.24184476264797528,
|
|
"y": 0.24184476264797522,
|
|
"z": 0.9396926207859084
|
|
},
|
|
"canvas": {
|
|
"toolhead": "{\"x\":-0.001,\"y\":0.001,\"z\":0.005}",
|
|
"tcpPose": "{\"x\":-1.225,\"y\":1.225,\"z\":4.76,\"a\":0,\"b\":20,\"c\":45}",
|
|
"toolAxis": "{\"x\":0.242,\"y\":0.242,\"z\":0.94}",
|
|
"executedPathPoints": "0",
|
|
"pathPoints": "1300"
|
|
},
|
|
"frame": "frame-0065.png",
|
|
"captureStartedMs": 1783110137664,
|
|
"captureDurationMs": 113,
|
|
"intervalSincePreviousMs": 147
|
|
},
|
|
{
|
|
"wallClock": "2026-07-03T20:22:17.782Z",
|
|
"perfNow": 10374.400000002235,
|
|
"runState": "complete",
|
|
"mode": "auto",
|
|
"interpState": "idle",
|
|
"activeLine": 44,
|
|
"programElapsedSeconds": 0.356,
|
|
"programRemainingSeconds": 61.10500000000001,
|
|
"motionIndex": 28,
|
|
"sampleIndex": 1293,
|
|
"programSourceMode": "linuxcnc-machine-file-remap-wasm",
|
|
"executionSourceMode": "linuxcnc-task-motion-hal-wasm",
|
|
"motionCount": 29,
|
|
"message": "task/HAL status tick 226",
|
|
"task": {
|
|
"state": "ON",
|
|
"mode": "AUTO",
|
|
"interpState": "IDLE",
|
|
"execState": "DONE",
|
|
"taskPaused": false,
|
|
"singleStepping": false,
|
|
"cycle": 1138,
|
|
"openProgram": "/work/sim/axis/vismach/5axis/table-rotary-tilting/xyzbc-trt/demos/xyzbc_switchkins.ngc",
|
|
"openedLineCount": 3,
|
|
"openedSourceLineCount": 44,
|
|
"executableLineCount": 2,
|
|
"nextProgramLine": 44
|
|
},
|
|
"ui": {
|
|
"taskState": "on",
|
|
"taskMode": "auto",
|
|
"interpState": "idle",
|
|
"execState": "done",
|
|
"taskCycle": 0,
|
|
"servoCycle": 11380,
|
|
"motionQueueDepth": 0,
|
|
"halChangedPinCount": 0,
|
|
"activeLine": 44,
|
|
"motionProgramLine": 44,
|
|
"halProgramLine": 44,
|
|
"activeLineSource": "motion-status",
|
|
"activeLineHalSynced": true,
|
|
"switchkinsType": 0,
|
|
"axisPose": {
|
|
"x": -10,
|
|
"y": 20,
|
|
"z": 10,
|
|
"a": 0,
|
|
"b": 0,
|
|
"c": 0
|
|
},
|
|
"axisPoseFrame": "work",
|
|
"currentVelocity": 2100
|
|
},
|
|
"feedback": {
|
|
"apiName": "web-rtcp-5axis-program-runtime-feedback",
|
|
"sourceMode": "linuxcnc-task-motion-hal-wasm",
|
|
"semanticBoundary": "linuxcnc_task_motion_hal_wasm_simulation_runtime",
|
|
"sampleIndex": 1293,
|
|
"motionIndex": 28,
|
|
"line": 44,
|
|
"motionProgramLine": 44,
|
|
"halProgramLine": 44,
|
|
"activeLineSource": "motion-status",
|
|
"activeLineHalSynced": true,
|
|
"type": "TASK_MOTION",
|
|
"timeSeconds": 0,
|
|
"axisPose": {
|
|
"x": -10,
|
|
"y": 20,
|
|
"z": 10,
|
|
"a": 0,
|
|
"b": 0,
|
|
"c": 0
|
|
},
|
|
"currentVelocityMmPerMin": 2100,
|
|
"requestedVelocityMmPerMin": 2100,
|
|
"distanceToGo": 0,
|
|
"dtg": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 0
|
|
},
|
|
"queueDepth": 0,
|
|
"activeDepth": 0,
|
|
"cycle": 11380,
|
|
"taskCycle": 1138,
|
|
"halChangedPinCount": 0,
|
|
"sourceFile": "xyzbc_switchkins_sub.ngc",
|
|
"statement": "g53 g0 x0y0 z#<zmax>",
|
|
"motionType": "rapid",
|
|
"activeKinematics": "identity",
|
|
"tcp": {
|
|
"x": -1.214338829969881,
|
|
"y": 1.2143388299698807,
|
|
"z": 4.7183376028591635
|
|
},
|
|
"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
|
|
}
|
|
}
|
|
},
|
|
"programUiExecution": {
|
|
"apiName": "web-rtcp-5axis-ui-gcode-live-execution",
|
|
"status": "running",
|
|
"source": "programAxisPreviewPath.samples",
|
|
"samplePeriodMs": 50,
|
|
"sampleIndex": 1293,
|
|
"sampleCount": 1300,
|
|
"executedSampleCount": 1294,
|
|
"timeMs": 64650,
|
|
"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#<zmax>",
|
|
"operation": "rapid-final-machine-reset",
|
|
"executionIndex": 62,
|
|
"gcodeStepIndex": 124,
|
|
"segmentIndex": 28,
|
|
"motionType": "rapid",
|
|
"activeKinematics": "identity",
|
|
"joint": {
|
|
"x": -10,
|
|
"y": 20,
|
|
"z": 10,
|
|
"a": 0,
|
|
"b": 0,
|
|
"c": 0
|
|
},
|
|
"tcp": {
|
|
"x": -1.214338829969881,
|
|
"y": 1.2143388299698807,
|
|
"z": 4.7183376028591635
|
|
},
|
|
"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"
|
|
},
|
|
"axisPose": {
|
|
"x": -10,
|
|
"y": 20,
|
|
"z": 10,
|
|
"a": 0,
|
|
"b": 0,
|
|
"c": 0
|
|
},
|
|
"tcpPose": {
|
|
"x": -10,
|
|
"y": 20,
|
|
"z": 10,
|
|
"a": 0,
|
|
"b": 0,
|
|
"c": 0
|
|
},
|
|
"toolAxisVector": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 1
|
|
},
|
|
"canvas": {
|
|
"toolhead": "{\"x\":-0.001,\"y\":0.001,\"z\":0.005}",
|
|
"tcpPose": "{\"x\":-10,\"y\":20,\"z\":10,\"a\":0,\"b\":0,\"c\":0}",
|
|
"toolAxis": "{\"x\":0,\"y\":0,\"z\":1}",
|
|
"executedPathPoints": "0",
|
|
"pathPoints": "1300"
|
|
},
|
|
"frame": "frame-0066.png",
|
|
"captureStartedMs": 1783110137777,
|
|
"captureDurationMs": 91,
|
|
"intervalSincePreviousMs": 113
|
|
},
|
|
{
|
|
"wallClock": "2026-07-03T20:22:17.869Z",
|
|
"perfNow": 10461.20000000298,
|
|
"runState": "complete",
|
|
"mode": "auto",
|
|
"interpState": "idle",
|
|
"activeLine": 44,
|
|
"programElapsedSeconds": 0.356,
|
|
"programRemainingSeconds": 61.10500000000001,
|
|
"motionIndex": 28,
|
|
"sampleIndex": 1293,
|
|
"programSourceMode": "linuxcnc-machine-file-remap-wasm",
|
|
"executionSourceMode": "linuxcnc-task-motion-hal-wasm",
|
|
"motionCount": 29,
|
|
"message": "task/HAL status tick 226",
|
|
"task": {
|
|
"state": "ON",
|
|
"mode": "AUTO",
|
|
"interpState": "IDLE",
|
|
"execState": "DONE",
|
|
"taskPaused": false,
|
|
"singleStepping": false,
|
|
"cycle": 1138,
|
|
"openProgram": "/work/sim/axis/vismach/5axis/table-rotary-tilting/xyzbc-trt/demos/xyzbc_switchkins.ngc",
|
|
"openedLineCount": 3,
|
|
"openedSourceLineCount": 44,
|
|
"executableLineCount": 2,
|
|
"nextProgramLine": 44
|
|
},
|
|
"ui": {
|
|
"taskState": "on",
|
|
"taskMode": "auto",
|
|
"interpState": "idle",
|
|
"execState": "done",
|
|
"taskCycle": 0,
|
|
"servoCycle": 11380,
|
|
"motionQueueDepth": 0,
|
|
"halChangedPinCount": 0,
|
|
"activeLine": 44,
|
|
"motionProgramLine": 44,
|
|
"halProgramLine": 44,
|
|
"activeLineSource": "motion-status",
|
|
"activeLineHalSynced": true,
|
|
"switchkinsType": 0,
|
|
"axisPose": {
|
|
"x": -10,
|
|
"y": 20,
|
|
"z": 10,
|
|
"a": 0,
|
|
"b": 0,
|
|
"c": 0
|
|
},
|
|
"axisPoseFrame": "work",
|
|
"currentVelocity": 2100
|
|
},
|
|
"feedback": {
|
|
"apiName": "web-rtcp-5axis-program-runtime-feedback",
|
|
"sourceMode": "linuxcnc-task-motion-hal-wasm",
|
|
"semanticBoundary": "linuxcnc_task_motion_hal_wasm_simulation_runtime",
|
|
"sampleIndex": 1293,
|
|
"motionIndex": 28,
|
|
"line": 44,
|
|
"motionProgramLine": 44,
|
|
"halProgramLine": 44,
|
|
"activeLineSource": "motion-status",
|
|
"activeLineHalSynced": true,
|
|
"type": "TASK_MOTION",
|
|
"timeSeconds": 0,
|
|
"axisPose": {
|
|
"x": -10,
|
|
"y": 20,
|
|
"z": 10,
|
|
"a": 0,
|
|
"b": 0,
|
|
"c": 0
|
|
},
|
|
"currentVelocityMmPerMin": 2100,
|
|
"requestedVelocityMmPerMin": 2100,
|
|
"distanceToGo": 0,
|
|
"dtg": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 0
|
|
},
|
|
"queueDepth": 0,
|
|
"activeDepth": 0,
|
|
"cycle": 11380,
|
|
"taskCycle": 1138,
|
|
"halChangedPinCount": 0,
|
|
"sourceFile": "xyzbc_switchkins_sub.ngc",
|
|
"statement": "g53 g0 x0y0 z#<zmax>",
|
|
"motionType": "rapid",
|
|
"activeKinematics": "identity",
|
|
"tcp": {
|
|
"x": -1.214338829969881,
|
|
"y": 1.2143388299698807,
|
|
"z": 4.7183376028591635
|
|
},
|
|
"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
|
|
}
|
|
}
|
|
},
|
|
"programUiExecution": {
|
|
"apiName": "web-rtcp-5axis-ui-gcode-live-execution",
|
|
"status": "running",
|
|
"source": "programAxisPreviewPath.samples",
|
|
"samplePeriodMs": 50,
|
|
"sampleIndex": 1293,
|
|
"sampleCount": 1300,
|
|
"executedSampleCount": 1294,
|
|
"timeMs": 64650,
|
|
"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#<zmax>",
|
|
"operation": "rapid-final-machine-reset",
|
|
"executionIndex": 62,
|
|
"gcodeStepIndex": 124,
|
|
"segmentIndex": 28,
|
|
"motionType": "rapid",
|
|
"activeKinematics": "identity",
|
|
"joint": {
|
|
"x": -10,
|
|
"y": 20,
|
|
"z": 10,
|
|
"a": 0,
|
|
"b": 0,
|
|
"c": 0
|
|
},
|
|
"tcp": {
|
|
"x": -1.214338829969881,
|
|
"y": 1.2143388299698807,
|
|
"z": 4.7183376028591635
|
|
},
|
|
"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"
|
|
},
|
|
"axisPose": {
|
|
"x": -10,
|
|
"y": 20,
|
|
"z": 10,
|
|
"a": 0,
|
|
"b": 0,
|
|
"c": 0
|
|
},
|
|
"tcpPose": {
|
|
"x": -10,
|
|
"y": 20,
|
|
"z": 10,
|
|
"a": 0,
|
|
"b": 0,
|
|
"c": 0
|
|
},
|
|
"toolAxisVector": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 1
|
|
},
|
|
"canvas": {
|
|
"toolhead": "{\"x\":-0.001,\"y\":0.001,\"z\":0.005}",
|
|
"tcpPose": "{\"x\":-10,\"y\":20,\"z\":10,\"a\":0,\"b\":0,\"c\":0}",
|
|
"toolAxis": "{\"x\":0,\"y\":0,\"z\":1}",
|
|
"executedPathPoints": "0",
|
|
"pathPoints": "1300"
|
|
},
|
|
"frame": "frame-0067.png",
|
|
"captureStartedMs": 1783110137868,
|
|
"captureDurationMs": 78,
|
|
"intervalSincePreviousMs": 91
|
|
},
|
|
{
|
|
"wallClock": "2026-07-03T20:22:17.947Z",
|
|
"perfNow": 10539,
|
|
"runState": "complete",
|
|
"mode": "auto",
|
|
"interpState": "idle",
|
|
"activeLine": 44,
|
|
"programElapsedSeconds": 0.356,
|
|
"programRemainingSeconds": 61.10500000000001,
|
|
"motionIndex": 28,
|
|
"sampleIndex": 1293,
|
|
"programSourceMode": "linuxcnc-machine-file-remap-wasm",
|
|
"executionSourceMode": "linuxcnc-task-motion-hal-wasm",
|
|
"motionCount": 29,
|
|
"message": "task/HAL status tick 226",
|
|
"task": {
|
|
"state": "ON",
|
|
"mode": "AUTO",
|
|
"interpState": "IDLE",
|
|
"execState": "DONE",
|
|
"taskPaused": false,
|
|
"singleStepping": false,
|
|
"cycle": 1138,
|
|
"openProgram": "/work/sim/axis/vismach/5axis/table-rotary-tilting/xyzbc-trt/demos/xyzbc_switchkins.ngc",
|
|
"openedLineCount": 3,
|
|
"openedSourceLineCount": 44,
|
|
"executableLineCount": 2,
|
|
"nextProgramLine": 44
|
|
},
|
|
"ui": {
|
|
"taskState": "on",
|
|
"taskMode": "auto",
|
|
"interpState": "idle",
|
|
"execState": "done",
|
|
"taskCycle": 0,
|
|
"servoCycle": 11380,
|
|
"motionQueueDepth": 0,
|
|
"halChangedPinCount": 0,
|
|
"activeLine": 44,
|
|
"motionProgramLine": 44,
|
|
"halProgramLine": 44,
|
|
"activeLineSource": "motion-status",
|
|
"activeLineHalSynced": true,
|
|
"switchkinsType": 0,
|
|
"axisPose": {
|
|
"x": -10,
|
|
"y": 20,
|
|
"z": 10,
|
|
"a": 0,
|
|
"b": 0,
|
|
"c": 0
|
|
},
|
|
"axisPoseFrame": "work",
|
|
"currentVelocity": 2100
|
|
},
|
|
"feedback": {
|
|
"apiName": "web-rtcp-5axis-program-runtime-feedback",
|
|
"sourceMode": "linuxcnc-task-motion-hal-wasm",
|
|
"semanticBoundary": "linuxcnc_task_motion_hal_wasm_simulation_runtime",
|
|
"sampleIndex": 1293,
|
|
"motionIndex": 28,
|
|
"line": 44,
|
|
"motionProgramLine": 44,
|
|
"halProgramLine": 44,
|
|
"activeLineSource": "motion-status",
|
|
"activeLineHalSynced": true,
|
|
"type": "TASK_MOTION",
|
|
"timeSeconds": 0,
|
|
"axisPose": {
|
|
"x": -10,
|
|
"y": 20,
|
|
"z": 10,
|
|
"a": 0,
|
|
"b": 0,
|
|
"c": 0
|
|
},
|
|
"currentVelocityMmPerMin": 2100,
|
|
"requestedVelocityMmPerMin": 2100,
|
|
"distanceToGo": 0,
|
|
"dtg": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 0
|
|
},
|
|
"queueDepth": 0,
|
|
"activeDepth": 0,
|
|
"cycle": 11380,
|
|
"taskCycle": 1138,
|
|
"halChangedPinCount": 0,
|
|
"sourceFile": "xyzbc_switchkins_sub.ngc",
|
|
"statement": "g53 g0 x0y0 z#<zmax>",
|
|
"motionType": "rapid",
|
|
"activeKinematics": "identity",
|
|
"tcp": {
|
|
"x": -1.214338829969881,
|
|
"y": 1.2143388299698807,
|
|
"z": 4.7183376028591635
|
|
},
|
|
"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
|
|
}
|
|
}
|
|
},
|
|
"programUiExecution": {
|
|
"apiName": "web-rtcp-5axis-ui-gcode-live-execution",
|
|
"status": "running",
|
|
"source": "programAxisPreviewPath.samples",
|
|
"samplePeriodMs": 50,
|
|
"sampleIndex": 1293,
|
|
"sampleCount": 1300,
|
|
"executedSampleCount": 1294,
|
|
"timeMs": 64650,
|
|
"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#<zmax>",
|
|
"operation": "rapid-final-machine-reset",
|
|
"executionIndex": 62,
|
|
"gcodeStepIndex": 124,
|
|
"segmentIndex": 28,
|
|
"motionType": "rapid",
|
|
"activeKinematics": "identity",
|
|
"joint": {
|
|
"x": -10,
|
|
"y": 20,
|
|
"z": 10,
|
|
"a": 0,
|
|
"b": 0,
|
|
"c": 0
|
|
},
|
|
"tcp": {
|
|
"x": -1.214338829969881,
|
|
"y": 1.2143388299698807,
|
|
"z": 4.7183376028591635
|
|
},
|
|
"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"
|
|
},
|
|
"axisPose": {
|
|
"x": -10,
|
|
"y": 20,
|
|
"z": 10,
|
|
"a": 0,
|
|
"b": 0,
|
|
"c": 0
|
|
},
|
|
"tcpPose": {
|
|
"x": -10,
|
|
"y": 20,
|
|
"z": 10,
|
|
"a": 0,
|
|
"b": 0,
|
|
"c": 0
|
|
},
|
|
"toolAxisVector": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 1
|
|
},
|
|
"canvas": {
|
|
"toolhead": "{\"x\":-0.001,\"y\":0.001,\"z\":0.005}",
|
|
"tcpPose": "{\"x\":-10,\"y\":20,\"z\":10,\"a\":0,\"b\":0,\"c\":0}",
|
|
"toolAxis": "{\"x\":0,\"y\":0,\"z\":1}",
|
|
"executedPathPoints": "0",
|
|
"pathPoints": "1300"
|
|
},
|
|
"frame": "frame-0068.png",
|
|
"captureStartedMs": 1783110137946,
|
|
"captureDurationMs": 66,
|
|
"intervalSincePreviousMs": 78
|
|
},
|
|
{
|
|
"wallClock": "2026-07-03T20:22:18.013Z",
|
|
"perfNow": 10605.60000000149,
|
|
"runState": "complete",
|
|
"mode": "auto",
|
|
"interpState": "idle",
|
|
"activeLine": 44,
|
|
"programElapsedSeconds": 0.356,
|
|
"programRemainingSeconds": 61.10500000000001,
|
|
"motionIndex": 28,
|
|
"sampleIndex": 1293,
|
|
"programSourceMode": "linuxcnc-machine-file-remap-wasm",
|
|
"executionSourceMode": "linuxcnc-task-motion-hal-wasm",
|
|
"motionCount": 29,
|
|
"message": "task/HAL status tick 226",
|
|
"task": {
|
|
"state": "ON",
|
|
"mode": "AUTO",
|
|
"interpState": "IDLE",
|
|
"execState": "DONE",
|
|
"taskPaused": false,
|
|
"singleStepping": false,
|
|
"cycle": 1138,
|
|
"openProgram": "/work/sim/axis/vismach/5axis/table-rotary-tilting/xyzbc-trt/demos/xyzbc_switchkins.ngc",
|
|
"openedLineCount": 3,
|
|
"openedSourceLineCount": 44,
|
|
"executableLineCount": 2,
|
|
"nextProgramLine": 44
|
|
},
|
|
"ui": {
|
|
"taskState": "on",
|
|
"taskMode": "auto",
|
|
"interpState": "idle",
|
|
"execState": "done",
|
|
"taskCycle": 0,
|
|
"servoCycle": 11380,
|
|
"motionQueueDepth": 0,
|
|
"halChangedPinCount": 0,
|
|
"activeLine": 44,
|
|
"motionProgramLine": 44,
|
|
"halProgramLine": 44,
|
|
"activeLineSource": "motion-status",
|
|
"activeLineHalSynced": true,
|
|
"switchkinsType": 0,
|
|
"axisPose": {
|
|
"x": -10,
|
|
"y": 20,
|
|
"z": 10,
|
|
"a": 0,
|
|
"b": 0,
|
|
"c": 0
|
|
},
|
|
"axisPoseFrame": "work",
|
|
"currentVelocity": 2100
|
|
},
|
|
"feedback": {
|
|
"apiName": "web-rtcp-5axis-program-runtime-feedback",
|
|
"sourceMode": "linuxcnc-task-motion-hal-wasm",
|
|
"semanticBoundary": "linuxcnc_task_motion_hal_wasm_simulation_runtime",
|
|
"sampleIndex": 1293,
|
|
"motionIndex": 28,
|
|
"line": 44,
|
|
"motionProgramLine": 44,
|
|
"halProgramLine": 44,
|
|
"activeLineSource": "motion-status",
|
|
"activeLineHalSynced": true,
|
|
"type": "TASK_MOTION",
|
|
"timeSeconds": 0,
|
|
"axisPose": {
|
|
"x": -10,
|
|
"y": 20,
|
|
"z": 10,
|
|
"a": 0,
|
|
"b": 0,
|
|
"c": 0
|
|
},
|
|
"currentVelocityMmPerMin": 2100,
|
|
"requestedVelocityMmPerMin": 2100,
|
|
"distanceToGo": 0,
|
|
"dtg": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 0
|
|
},
|
|
"queueDepth": 0,
|
|
"activeDepth": 0,
|
|
"cycle": 11380,
|
|
"taskCycle": 1138,
|
|
"halChangedPinCount": 0,
|
|
"sourceFile": "xyzbc_switchkins_sub.ngc",
|
|
"statement": "g53 g0 x0y0 z#<zmax>",
|
|
"motionType": "rapid",
|
|
"activeKinematics": "identity",
|
|
"tcp": {
|
|
"x": -1.214338829969881,
|
|
"y": 1.2143388299698807,
|
|
"z": 4.7183376028591635
|
|
},
|
|
"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
|
|
}
|
|
}
|
|
},
|
|
"programUiExecution": {
|
|
"apiName": "web-rtcp-5axis-ui-gcode-live-execution",
|
|
"status": "running",
|
|
"source": "programAxisPreviewPath.samples",
|
|
"samplePeriodMs": 50,
|
|
"sampleIndex": 1293,
|
|
"sampleCount": 1300,
|
|
"executedSampleCount": 1294,
|
|
"timeMs": 64650,
|
|
"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#<zmax>",
|
|
"operation": "rapid-final-machine-reset",
|
|
"executionIndex": 62,
|
|
"gcodeStepIndex": 124,
|
|
"segmentIndex": 28,
|
|
"motionType": "rapid",
|
|
"activeKinematics": "identity",
|
|
"joint": {
|
|
"x": -10,
|
|
"y": 20,
|
|
"z": 10,
|
|
"a": 0,
|
|
"b": 0,
|
|
"c": 0
|
|
},
|
|
"tcp": {
|
|
"x": -1.214338829969881,
|
|
"y": 1.2143388299698807,
|
|
"z": 4.7183376028591635
|
|
},
|
|
"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"
|
|
},
|
|
"axisPose": {
|
|
"x": -10,
|
|
"y": 20,
|
|
"z": 10,
|
|
"a": 0,
|
|
"b": 0,
|
|
"c": 0
|
|
},
|
|
"tcpPose": {
|
|
"x": -10,
|
|
"y": 20,
|
|
"z": 10,
|
|
"a": 0,
|
|
"b": 0,
|
|
"c": 0
|
|
},
|
|
"toolAxisVector": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 1
|
|
},
|
|
"canvas": {
|
|
"toolhead": "{\"x\":-0.001,\"y\":0.001,\"z\":0.005}",
|
|
"tcpPose": "{\"x\":-10,\"y\":20,\"z\":10,\"a\":0,\"b\":0,\"c\":0}",
|
|
"toolAxis": "{\"x\":0,\"y\":0,\"z\":1}",
|
|
"executedPathPoints": "0",
|
|
"pathPoints": "1300"
|
|
},
|
|
"frame": "frame-0069.png",
|
|
"captureStartedMs": 1783110138012,
|
|
"captureDurationMs": 63,
|
|
"intervalSincePreviousMs": 66
|
|
},
|
|
{
|
|
"wallClock": "2026-07-03T20:22:18.076Z",
|
|
"perfNow": 10668.20000000298,
|
|
"runState": "complete",
|
|
"mode": "auto",
|
|
"interpState": "idle",
|
|
"activeLine": 44,
|
|
"programElapsedSeconds": 0.356,
|
|
"programRemainingSeconds": 61.10500000000001,
|
|
"motionIndex": 28,
|
|
"sampleIndex": 1293,
|
|
"programSourceMode": "linuxcnc-machine-file-remap-wasm",
|
|
"executionSourceMode": "linuxcnc-task-motion-hal-wasm",
|
|
"motionCount": 29,
|
|
"message": "task/HAL status tick 226",
|
|
"task": {
|
|
"state": "ON",
|
|
"mode": "AUTO",
|
|
"interpState": "IDLE",
|
|
"execState": "DONE",
|
|
"taskPaused": false,
|
|
"singleStepping": false,
|
|
"cycle": 1138,
|
|
"openProgram": "/work/sim/axis/vismach/5axis/table-rotary-tilting/xyzbc-trt/demos/xyzbc_switchkins.ngc",
|
|
"openedLineCount": 3,
|
|
"openedSourceLineCount": 44,
|
|
"executableLineCount": 2,
|
|
"nextProgramLine": 44
|
|
},
|
|
"ui": {
|
|
"taskState": "on",
|
|
"taskMode": "auto",
|
|
"interpState": "idle",
|
|
"execState": "done",
|
|
"taskCycle": 0,
|
|
"servoCycle": 11380,
|
|
"motionQueueDepth": 0,
|
|
"halChangedPinCount": 0,
|
|
"activeLine": 44,
|
|
"motionProgramLine": 44,
|
|
"halProgramLine": 44,
|
|
"activeLineSource": "motion-status",
|
|
"activeLineHalSynced": true,
|
|
"switchkinsType": 0,
|
|
"axisPose": {
|
|
"x": -10,
|
|
"y": 20,
|
|
"z": 10,
|
|
"a": 0,
|
|
"b": 0,
|
|
"c": 0
|
|
},
|
|
"axisPoseFrame": "work",
|
|
"currentVelocity": 2100
|
|
},
|
|
"feedback": {
|
|
"apiName": "web-rtcp-5axis-program-runtime-feedback",
|
|
"sourceMode": "linuxcnc-task-motion-hal-wasm",
|
|
"semanticBoundary": "linuxcnc_task_motion_hal_wasm_simulation_runtime",
|
|
"sampleIndex": 1293,
|
|
"motionIndex": 28,
|
|
"line": 44,
|
|
"motionProgramLine": 44,
|
|
"halProgramLine": 44,
|
|
"activeLineSource": "motion-status",
|
|
"activeLineHalSynced": true,
|
|
"type": "TASK_MOTION",
|
|
"timeSeconds": 0,
|
|
"axisPose": {
|
|
"x": -10,
|
|
"y": 20,
|
|
"z": 10,
|
|
"a": 0,
|
|
"b": 0,
|
|
"c": 0
|
|
},
|
|
"currentVelocityMmPerMin": 2100,
|
|
"requestedVelocityMmPerMin": 2100,
|
|
"distanceToGo": 0,
|
|
"dtg": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 0
|
|
},
|
|
"queueDepth": 0,
|
|
"activeDepth": 0,
|
|
"cycle": 11380,
|
|
"taskCycle": 1138,
|
|
"halChangedPinCount": 0,
|
|
"sourceFile": "xyzbc_switchkins_sub.ngc",
|
|
"statement": "g53 g0 x0y0 z#<zmax>",
|
|
"motionType": "rapid",
|
|
"activeKinematics": "identity",
|
|
"tcp": {
|
|
"x": -1.214338829969881,
|
|
"y": 1.2143388299698807,
|
|
"z": 4.7183376028591635
|
|
},
|
|
"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
|
|
}
|
|
}
|
|
},
|
|
"programUiExecution": {
|
|
"apiName": "web-rtcp-5axis-ui-gcode-live-execution",
|
|
"status": "running",
|
|
"source": "programAxisPreviewPath.samples",
|
|
"samplePeriodMs": 50,
|
|
"sampleIndex": 1293,
|
|
"sampleCount": 1300,
|
|
"executedSampleCount": 1294,
|
|
"timeMs": 64650,
|
|
"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#<zmax>",
|
|
"operation": "rapid-final-machine-reset",
|
|
"executionIndex": 62,
|
|
"gcodeStepIndex": 124,
|
|
"segmentIndex": 28,
|
|
"motionType": "rapid",
|
|
"activeKinematics": "identity",
|
|
"joint": {
|
|
"x": -10,
|
|
"y": 20,
|
|
"z": 10,
|
|
"a": 0,
|
|
"b": 0,
|
|
"c": 0
|
|
},
|
|
"tcp": {
|
|
"x": -1.214338829969881,
|
|
"y": 1.2143388299698807,
|
|
"z": 4.7183376028591635
|
|
},
|
|
"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"
|
|
},
|
|
"axisPose": {
|
|
"x": -10,
|
|
"y": 20,
|
|
"z": 10,
|
|
"a": 0,
|
|
"b": 0,
|
|
"c": 0
|
|
},
|
|
"tcpPose": {
|
|
"x": -10,
|
|
"y": 20,
|
|
"z": 10,
|
|
"a": 0,
|
|
"b": 0,
|
|
"c": 0
|
|
},
|
|
"toolAxisVector": {
|
|
"x": 0,
|
|
"y": 0,
|
|
"z": 1
|
|
},
|
|
"canvas": {
|
|
"toolhead": "{\"x\":-0.001,\"y\":0.001,\"z\":0.005}",
|
|
"tcpPose": "{\"x\":-10,\"y\":20,\"z\":10,\"a\":0,\"b\":0,\"c\":0}",
|
|
"toolAxis": "{\"x\":0,\"y\":0,\"z\":1}",
|
|
"executedPathPoints": "0",
|
|
"pathPoints": "1300"
|
|
},
|
|
"frame": "frame-0070.png",
|
|
"captureStartedMs": 1783110138075,
|
|
"captureDurationMs": 67,
|
|
"intervalSincePreviousMs": 63
|
|
}
|
|
]
|
|
} |